Loading...
BonchoBelutov avatar BonchoBelutov 2 Точки

Помощ с проблем 12 Generate Rectangles

Описанието на задачата е https://softuni.bg/downloads/svn/programming-basics/Jan-2016/Part-I-Coding-for-Dummies/8.%20Sample-Coding-Basics-Exam.docx

Това което съм накодил до момента е http://pastebin.com/H88rG44e. Judge-a дава 40/100 . Моля за помощ с решение.

0
Programming Basics 04/04/2016 23:22:59
vancho avatar vancho 430 Точки
Best Answer

Здравей,

нямам много време за да я докарам до 100, но успях да докарам задачата до 90 точки. Ето линк: http://pastebin.com/H8fN3z0g.

Успех

-1
BonchoBelutov avatar BonchoBelutov 2 Точки

Благодаря колега видях каква е логиката. Стигнах до 100/100 след като добавих проверката след for конструкциите

if(-n <= i1 && i1 < i2 && i2 <=n && -n <= i3 && i3 < i4 && i4<= n)

ето и цялото решение http://pastebin.com/6yUMDueM

0
04/04/2016 23:22:12
annsta avatar annsta 305 Точки

Правиш много странна проверка на ред 40 и след това печаташ, че не е намерен правоъгълник. По условия трябва да отпечаташ No, само когато нито един правоъгълник в зададените ограничения не е намерен, а ти никъде всъщност не правиш такава проверка. Можеш да въведеш допълнителен брояч на намерените правоъгълниници или boolean променлива, която приема стойност true, когато се намери правоъгълник и да отпечаташ No, ако броячът не стане по-голям от 0 или boolean променливата не стане true. Допълнително бих поменила инвервалите във for-циклите, така че да са спазени right > left и bottom > top, а не от -n. Ето го моето решение https://gist.github.com/astambi/c52c252d21bcc50400c8539d9f1ef49f

2
desiko avatar desiko 1 Точки

И аз го правя като теб, но неговото е по- елегантно с проверката на ред 40.

0
Nikola_Andreev avatar Nikola_Andreev 671 Точки

Един лек коментар от мен към условието на задачата.

В условието пише: Генерираните правоъгълници да се отпечатат в следния формат:  (left, top) (bottom, right) -> area

А трябва да е: (left, top) (right, bottom) -> area

Има голямо значение, понеже при варианта даден по условие дава само 40/100 и бая се почудих защо не ми минава кода.

3
VipUser93 avatar VipUser93 0 Точки

Този "лек" коментар ми спести сигурно още няколко часа главоблъскане.

Благодаря ти много! : ))))))

 

0
netherblood avatar netherblood 95 Точки

Може ли и аз толкова време да си блъскам главата, пробвайки какво ли не, само за да разбера че условието е сгрешено хаха

Отговарящите да поправят условието и да следят повече!

-1
Kalo7o avatar Kalo7o 3 Точки

http://pastebin.com/Ea5Y10yT

 

Ето го моето решение 90 точки и не знам къде ми е грешката - не показва.

Ако може малко помощ.

-1
desiko avatar desiko 1 Точки

Ако ти гърми тест 3, прибави проверката, който е описал BonchoBelutov
if(-n <= i1 && i1 < i2 && i2 <=n && -n <= i3 && i3 < i4 && i4<= n)

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.