[Logo] Mendo Judge Discussion Board - Forums
  [Search] Search   [Recent Topics] Recent Topics   [Hottest Topics] Hottest Topics   [Members]  Member Listing   [Groups] Back to home page 
Zadaca zatvor  XML
Forum Index » Задачи од национални натпревари
Author Message
BATIR



Joined: 20/06/2015 16:36:50
Messages: 148
Offline

Shto treba da smenam vo kodot za da mi raboti?
Kodot ne e dovrsen , ama ne raboti ni dottuka.
Otkako ova kje se sredi shto treba da dodadam?
Fala odnapred
MOI



Joined: 07/07/2010 16:31:48
Messages: 440
Offline

BATIR wrote:Shto treba da smenam vo kodot za da mi raboti?
Kodot ne e dovrsen , ama ne raboti ni dottuka.
Otkako ova kje se sredi shto treba da dodadam?
Fala odnapred

Тука имам два коментара. Прво во однос на идејата "што треба да додадеш?". Замисли дека задачата не ја бараше максималната вредност на растојание до затвореник, туку ти беше дадена вредноста на растојание и ти треба само да провериш дали може да се стигне до излезот така што ќе бидеме на растојание од затвореници кое е поголемо од таа вредност. Ова е лесно да се реши така (исто со BFS)? Епа, конечното решение е да користиме бинарно пребарување на таа вредност. Ќе провериме дали може да се стигне за вредност X, ако може ќе бараме поголеми вредности, ако не помали, итн....

Другиот (многу поважен) коментар ми е во однос на начинот на решавање. Мислам дека не треба да се почнува со решавање без да знаеш што точно ќе ти биде конечното решение. Имено, можеш да изгубиш многу време на пишување на решение со стотици линии код, и потоа да излезе дека тоа воопшто не е применливо. Во случајов можеш да го задржиш делот со BFS, но на овој начин можеш да изгубиш голем дел од натпревар на пишување решение кое на крај ќе освои 0 поени. (Чисто моја сугестија)
MODDI



Joined: 27/12/2017 18:17:00
Messages: 34
Offline


Користам два бфс, еден за одредување на делечината на секое поле до секој затвореник, а другиот за пронаоѓање на максималниот пат до излезот, на пр. прво пробуваме со 3ка, и со бфс одиме на сите полиња кај што има далечина 3ка, ако небива тогаш пробуваме со 3ка и 2ка, и тогаш ако небива пробуваме со 1. Ако може малце помош, не сакам цело решение само што да сменам.

This message was edited 1 time. Last update was at 08/01/2019 20:19:40

petarsor



Joined: 15/07/2018 11:58:27
Messages: 74
Online

MODDI wrote:Користам два бфс, еден за одредување на делечината на секое поле до секој затвореник, а другиот за пронаоѓање на максималниот пат до излезот, на пр. прво пробуваме со 3ка, и со бфс одиме на сите полиња кај што има далечина 3ка, ако небива тогаш пробуваме со 3ка и 2ка, и тогаш ако небива пробуваме со 1. Ако може малце помош, не сакам цело решение само што да сменам.


Ќе пробам до некаде да ти помогнам, оти не сакаш цело решение.
Прво, имаш некои проблеми. На пример, во последниот for циклус користиш for(int i=pom;i>0;i--), ама па потоа внатре користиш pom (што не се менува бидејќи ти всушност го менуваш i, па треба тоа да користиш). Ова би го заменил со for(; pom>0 && big == 0; pom--)

Слично, q.push() и memset треба да ги ставиш внатре во тој циклус. И не би проверувал дали (MAT1[next_x][next_y]==pom) туку дали е поголемо или еднакво. Вака нешто (сменет е само последниот дел)



Сега ти поминува наместо на 0/20 случаи на 15/20 случаи. Другото оставам на тебе, да не ја средувам до крај, особено бидејќи несакаш и има напишано решение погоре и можеш да симнеш некој од тие тест случаи.
MOI



Joined: 07/07/2010 16:31:48
Messages: 440
Offline

petarsor wrote:Сега ти поминува наместо на 0/20 случаи на 15/20 случаи. Другото оставам на тебе, да не ја средувам до крај, особено бидејќи несакаш и има напишано решение погоре и можеш да симнеш некој од тие тест случаи.


Бидејќи е поправено скоро целото решение, мислам дека може да се напише и последната поправка, а тоа е во циклусот каде што се намалува pom, веднаш на почетокот да се провери дали почетната позиција е соодветна, т.е. да се додаде


Така работи на сите случаи.
 
Forum Index » Задачи од национални натпревари
Go to:   
Powered by JForum 2.1.8 © JForum Team