Author |
Message |
|
Perez wrote:Како е можно ова ?
Баш и не пробав да ја прочитам задачата од почеток, ама мислам дека имаш проблеми со читатењето на влезните податоци.
1. text[n] е подобро да е text[n+1], поради http://mendo.mk/Lecture.do?id=21 (види "Низи од знаци")
2. Мислам дека кога читаме со cin >> str, читањето се врши до првото празно место или нов ред и слично.
Можеби нешто вака би било подобро:
|
 |
|
Perez wrote:Може помош ? Како пресмета дека треба 6 пати?
да може 6 пати ако си 103+++; али тројката е во тоа "скршено" копче
исто и за 109- - - ;
Во задачата пишува "На почеток, Трпе се наоѓа на страница 100 и сака да стигне до страницата P. ". Значи, ако веќе сме на страница 100, треба само 6 пати да притиснеме на "+".
|
 |
|
Хм, треба само да видиш во која секунда од денот има најмногу луѓе. Некако вака (сменет е само последниот дел од твојот код)...
|
 |
|
Perez wrote:После читање толку матријали за ова ДП , па некако слабо сфаќам.
Може ли некој да ми го објасни во кратки црти , односно да ме насочи како да размислувам за ДП.
Јас би почнал од тука, доста е добро објаснето.
https://www.topcoder.com/community/data-science/data-science-tutorials/dynamic-programming-from-novice-to-advanced/
Како прв чекор (да сфатиш што воопшто се обидуваме да решиме со динамичко програмирање)
https://www.quora.com/How-should-I-explain-dynamic-programming-to-a-4-year-old/answer/Jonathan-Paulson
https://www.hackerearth.com/practice/notes/dynamic-programming-i-1/
|
 |
|
жучко wrote:Ako nekoj mozi da mi pomogni da go potsredam kodov . Mi vadi 13/22 . Site so se gresni se Runtime Error (излезен код различен од 0)
link : http://mendo.mk/Task.do?id=618
N е голем број, па матрицата што ја правиш (connected) зафаќа многу меморија. Слично, не е ефикасно да правиш count(...) на вектор (kosta, kiril), бидејќи тогаш се изминуваат сите елементи од векторот за да се пресмета бараниот број. Можеш да користиш set (каде барањето дали постои некој елемент или не се изведува во логаритамско време). Некако вака можеш да го подобриш кодот:
|
 |
|
Да, long long користи 8 бајти (64 бита) за претставување на броеви (позитивни и негативни), па со него може да се претстават броеви со големина до 9223372036854775807 (=2^63 - 1, бидејќи треба место за 0 и за негативните броеви). Кај оваа задача може да се добијат и поголеми броеви, па можеше да се користи низа или string за собирање на броевите. Нешто вака...
|
 |
|
BATIR wrote:Еве ми го кодот , три од дваесет тест случаи ми се точни. Помош
ne ti e tochno reshenieto, na primer za sledniov sluchaj kje otpechati 4, no odgovorot e 3.
5
10 10
10 10
10 10
13 13
13 13
Jas vaka bi ja reshaval...
|
 |
|
Tose Todorov wrote:За програмирање почнав посериозно да се интересирам пред 3-4 месеци и некои работи уште не ми се јасни па ако може некој да ми објасни нешто
Случајно ја отворив задачата Роденденски прослави и без да ја дочитам ми текна решение и почнав да пишувам. Сигурно има пооптимално решение, уште се немам обидено да ја решам на друг начин затоа што ме интересира зошто ова решение ми го надминува временскиот лимит за 2 тест примери.
Хм, системот не вика дека имаш надминат временски лимит, туку дека се појавува грешка при извршувањето на твојата програма.
Доколку те интересира што е грешката, прочитај го првиот дел од ова предавање: http://mendo.mk/Lecture.do?id=21
Накратко, ако имаш низа array[12], тогаш таа има големина од 12 елементи, и можеш да запишуваш на позициите: array[0], array[1], ... array[11], но не и array[12]. Слично и со матрици.
|
 |
|
boolTrue wrote:Ако дојде до ваков ист случај на натпревар, дали ќе ми се важи задачата за решена ако се проверуват рачно?
Прво, тешко дека ќе дојде до ваков случај, бидејќи кога ќе пратиш решение за време на натпревар, најпрвин ти се тестира решението на примерите од текстот на задачата и добиваш информација дали е точно или не, па ќе успееш да го поправиш истото да дава точен резултат барем на примерите од текстот на задачата.
Не го сфатив делот за "ако се проверуваат рачно". Комисијата која ги организира натпреварите не троши многу време да ги проверува решенијата рачно (освен ако системот не пријави дека имало препишување - т.е. повеќе решенија се слични, итн). Ако мислиш на пишување код (решение) од натпреварувач, кое ќе има if(...) за разни тест случаи, тоа тешко може да освои многу поени, бидејќи тест случаите се сокриени и не се познати додека не заврши натпреварот.
|
 |
|
Математика. http://www.e-matematika.mk/linearni-ravenki-i-neravenki (види дел 2).
|
 |
|
Системот ги проверува решенијата на ограничен број тест случаи. Ако пратиш решение, ќе видиш дека задачата се тестира на 5, 10, 20 (или некој друг мал број) тест случаи (не на сите можни вредности). Ако решението поминува точно на одбраните тест случаи во тренинг делот, задачата се смета за решена.
Во повеќето задачи, тест примерите кои се во текстот на задачата се дел од тест случаите, но понекогаш не се (зборувам за тренинг делот).
|
 |
|
mitkonikov wrote:Ja resavam zadachata so BFS od sekoe cveke.... 100 BFS najlos sluchaj ke bide CxNxM 100x(1000x1000) t.e. na cela zadaca => 100 000 000
Za site primeri raboti, samo na cetvrtiot ne.....
Во текстот на задачата пишува:
"Цревата на системот не може да поминат преку полињата со бетонски плочи, но слободно може да поминуваат преку сите други полиња."
Во твојата функција valid(), проверуваш дали (c[a][b] == '.'), а мислам дека треба да биде (c[a][b] == '.' || c[a][b] == 'C').
Го пратив тоа решение, и поминува на сите примери.
|
 |
|
BATIR wrote:http://mendo.mk/Task.do?id=286
Ајде помош околу задачава. Имам идеја но не знам како да ги спојам броевиве.
Дали е можно ја решам задачава вака?
Со еден макс кој почнува од нула да ги проверувам сие можни споени броеви , т.е. ако тој број е поголем од најголемиот досегашен МАКС. И на крај само о печатам тој број?
Прашуваше некој за истава задача пред некој ден. Решение има тука: http://mendo.mk/jforum/posts/list/452.page
Не можев баш да разберам што мислиш под "сите можни споени броеви". Ако мислиш баш сите можни споени броеви, такви може да има многу (N! [факториел], што може да е до 1000!, што е огромен број со мноооогу нули), така да тоа не може.
|
 |
|
Tose Todorov wrote:Ако може помош за задачава, ми вади 13/20 неможам да сфатам каде ми е грешката
Не чини овој дел, бидејќи, покрај овој стринг, ќе го прескокнеш и наредниот:
Смени го во нешто како:
|
 |
|
Набрзина ги нацртав, ама вака би требало да изгледаат.
Инаку, решението е едноставно и поврзано со Питагорова теорема (да ги провериш сите можни тројки).
|
 |
|