Draw Fort ? Exam 6 march
30/100 При големите числа не минава ... Ако може да ми обясните защо ?
http://pastebin.com/KH5C4PWa
30/100 При големите числа не минава ... Ако може да ми обясните защо ?
http://pastebin.com/KH5C4PWa
Добре де. Имам следния въпрос в случая джъдж какво гледа формулата по, която се изчислява или резултата? Щото решенията си изглеждат работещи въпреки, че дава 30/100.
Това е първото, което написах : https://pastebin.com/Pj7mqyir и резултатите от въвдените числа ми изглеждат еднакви. Темата е стара, но дано някой може да ми разясни нещата. :))
Аз я реших токущо. Много е интересна и полезна. Реших да не ползвам методи защото не сме ги взели и второ защото наученото е напълно достатъчно да се реши задачата, просто трябва добър алгоритмичен план. Първото важно нещо е да разберем, че средният сегмент трябва да е четно число, тоест итерациите в цилките винаги да са четни, този проблем го реших с 2*n. Вторият важен извод е повече от тривиален - деленето на променливата от целочислена става пак целочислена, тоест при поредни стойности на променливата 5 / 2 = 2 и 6 / 2=3, ако искаме 5 / 2 = 3 и 6 / 2 = 3 допълвам функцията с (n + 1) / 2 и добавям цифра ако целя опреден брой итерации +1 или +2. Зависимостите са изцяло линейни.
Ако искаме да прескочим с една стъпка (ако условието го изисква или е в услуга на нашият алгоритъм), тоест да са еднакъв брой итерации не 5 и 6 ами 6 и 7, просто добавяме към числителят 1 - (n+1) / 2, така се получава 6 / 2 = 3 и 7 / 2 = 3.
Трябва да отбележа и нещо много важно при конструирането на цикли 6/2 не е равно на 3/2 + 3/2, както е в математиката. От тук нататък всичко е въображение.
https://pastebin.com/ARhqnSd5
Сигурно може да се оптимизира още, но нямам време за това. Важни са изложените горе концепции.