Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Ke ne ke itokisetsa Google HashCode World Championship Finals 2017. Ena ke tlhōlisano e kholo ka ho fetisisa e nang le mathata a algorithm e hlophisitsoeng ke Google.

Ke qalile ho ithuta C++ ho tloha qalong sehlopheng sa borobong. Ke ne ke sa tsebe letho ka mananeo, li-algorithms kapa libopeho tsa data. Ka nako e 'ngoe ke ile ka ngola mola oa ka oa pele oa khoutu. Likhoeli tse supileng hamorao, tlhōlisano ea mananeo e ne e atametse. Ke ne ke batla ho bona hore na mokhoa oa ka oa ho ithuta o sebetsa hantle hakae. E ne e le monyetla o phethahetseng.

Kamora matsatsi a mabeli a tlholisano, liphetho li ile tsa fihla: Ke hapile khau ea khauta.

Ke ile ka makala. Ke ne ke le ka pele ho bahlolisani ba nang le boiphihlelo ba lilemo tse 5. Ke ne ke tseba hore ke sebelitse ka thata, empa katleho ena e ne e feta tsohle tseo ke neng ke li lebeletse. Ke ile ka hlokomela hore lenaneo la lipapali e ne e le sehlooho sa ka, 'me ke ile ka kenella ho eona ka hlooho.

Ke tseba se entseng hore ke atlehe 'me ke batla ho arolelana le uena.

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Sengoloa se fetoletsoe ka tšehetso ea EDISON Software, e e hlokomela bophelo bo botle ba baetsi ba mananeo le lijo tsa bona tsa hoseng, hammoho le e hlahisa software e ikhethileng.

Ke puo efe ea lenaneo eo u ka e khethang

  • C++ - Ke khothaletsa haholo! O lebelo haholo. Ts'ebetsong ea li-algorithms ho nka nako e nyane ka lebaka la STL. C++ e amoheloa litlholisanong tsohle. Ke ngotse mola oa ka oa pele oa khoutu ho C ++.
  • C - Ithute C ++ ka lebaka la STL. Haeba u tseba C, u ka boela ua kenya lenaneo ka C++.
  • Java ke puo e sebetsang butle. E na le sehlopha sa Big Integer, empa e ke ke ea u thusa haholo. Haeba tlholisano e na le moeli oa nako, ka Java ka sebele u tla e feta. Java ha e amoheloe litlholisanong tsohle.

U ka itlhakisa hokae

ke khothaletsa Sphere Online Moahloli (SPOJ). Ke mohlodi o atlehang ho ya ka bongata le boleng. Bahlophisi le litharollo li fumaneha inthaneteng haeba u ka ts'oara ha u ntse u rarolla mathata. Ho phaella ho sebaka sena ke khothaletsa SPOJ Toolkit и sehlopha sa bothata bakeng sa SPOJ.pl.

Ntlha ea pele, u lokela ho ntlafatsa tsebo ea hau ea lintho tsa motheo

Hang ha u se u tloaelane le syntax ea puo, ho na le mathata a mang ao u lokelang ho a hlōla. Qala ka mathata a bonolo a hlokang ho itloaetsa. Nakong ena, ntho e ka sehloohong ke ho tseba mokhoa oa hau oa lenaneo. Mohlomong u rata ho ngola khoutu ka sebaka se sengata sa makhooa, mohlomong ha u rate. E ka 'na eaba u beha masakakana moleng o tšoanang le oa "haeba", kapa u ka 'na ua a beha meleng e arohaneng.

U tlameha ho fumana mokhoa oa hau oa lenaneo hobane ke mokhoa oa HAO.

Ha u e batla, hopola melao-motheo e ’meli ea motheo:

  • Khoutu ea hau e lokela ho ba bonolo ho e sebelisa. U lokela ho ikutloa u phutholohile ho kenya ts'ebetsong tharollo eo u tlang ka eona. Hobaneng? Hobane nakong ea tlhōlisano, ntho ea ho qetela eo u e batlang ke ho lahleheloa ke khoutu ea hau. Kamehla ho molemo ho qeta metsotso e meng ea 5 ho nahana ka mokhoa oa ho nolofatsa ts'ebetsong ea khoutu ho feta ho qeta metsotso e 10 u leka ho e utloisisa.
  • Khoutu ea hau e lokela ho ba bonolo ho e bala. Ha khoutu e le bonolo ho e bala, ho bonolo ho e lokisa. Ha re tobane le taba ena—litšitšili li etsahala ka linako tsohle. U tseba maikutlo ao ha u saletsoe ke metsotso e 10 'me u sitoa ho fumana phoso e khōlō? Ehlile u etsa joalo. Ho qoba boemo bona, ngola khoutu e balehang. Hang ha u qala ho e lokisa, khoutu e tla bonahala e le ea tlhaho ebile e bonolo ho e utloisisa.

Mohlala oa ka ke ona setaele sa lenaneo.

Mokhoa oa ho Ntlafatsa Tsebo ea Hao ea Tsoelo-pele

Itloaetse, itloaetse le ho ikoetlisa haholoanyane. Ke khothaletsa hore u sebetsane le mathata a pele a 250 a ka rarolloang haholo SPOJ. Li rarolle ka tatellano. Qeta bonyane hora u nahana ka tharollo ho e mong le e mong oa bona.

U se ke ua re: "Bothata bona bo boima haholo ho 'na, ke tla leka ho rarolla e latelang." Ke kamoo ba lahlehileng ba nahanang kateng.

Nka sekhechana sa pampiri le pentšele. Nahana ka taba ena. Mohlomong u ka fumana tharollo, mohlomong ha ho joalo. Bonyane, o tla hlaolela monahano oa algorithmic. Haeba u sa khone ho hlahisa tharollo nakong ea hora, batla tharollo e lokiselitsoeng sethaleng kapa lihloohong.

U tla fihlela eng ka mokhoa ona? Ithute ho kenya tšebetsong mehopolo ea hau kapele u sebelisa khoutu. Le ho ithuta mathata a khale le li-algorithms.

Taba ea bobeli, o tlameha ho tseba li-algorithms le libopeho tsa data

Latela mokhoa oa hierarchical. A na u qalile ho matha u sa tsebe ho tsamaea? Che. A na u ka haha ​​skyscraper ntle le motheo o tiileng? Eseng hape.

U ke ke ua iphapanyetsa mehato e tseleng ea ho ithuta. Haeba u iphapanyetsa tsona, u tla sala le likheo tsa tsebo. Ha nako e ntse e ea li tla mpefala feela.

Qala ka li-algorithms tsa mantlha le libopeho tsa data

Ho thata ho qala. Mohlomong hobane ha u tsebe hore na u ithute eng pele. Ke ka lebaka lena Ke thehile thupelo ea video "Algorithms le Libopeho tsa data". Ha ke theha thupelo ena, ke e thehile holim'a kamoo nka ratang ho rutoa kateng. Karabelo e bile e hlollang! Baithuti ba fetang 3000 ba tsoang linaheng tse fetang 100 ba ile ba ingolisa bakeng sa thupelo khoeling ea pele.

Haeba u sebeletsa ho rarolla mathata a bonolo, u ke ke ua ntlafala.

Mokhoa o sebetsang ka ho fetesisa oa ho utloisisa seo u sa se tsebeng ke ho se etsa ka ts'ebetso. Ke kamoo ke ithutileng kateng. Ke ithutile mekhoa e mengata e mecha eo ke neng ke qala ho utloa ka eona pele ka ho khetha mosebetsi o boima.

Bothata bo bong le bo bong ba boraro boo u sebetsang ho bona bo lokela ho u ruta ntho e ncha. E-ba hlokolosi haholoanyane ha u khetha mathata. Khetha mathata a thata ho feta!

Ha u se u qetile mathata ana a 250 ho tsoa ho SPOJ, u tla ba le kutloisiso ea mantlha ea lihlooho tsa mananeo a lipapali. Ka kutloisiso e tebileng ea mohopolo o ka morao ho li-algorithms tsa mantlha, li-algorithms tsa boemo bo holimo li tla bonahala li se thata haholo. Ka tsela ena u ka sebelisa tsebo ea hau hamolemo.

Kena ka botebo ho e 'ngoe le e 'ngoe ea lihlooho tse kholo

Mohloli oa bohlokoa ke ona ka boitsebiso bo bongata. Ha u le moo u tla fumana li-algorithms tse 10 tse holimo le libopeho tsa data bakeng sa sehlooho ka seng. Kamora mathata a 250 a tsoang ho SPOJ, o tla tseba haholo lethathamong lena. Empa u tla boela u khoptjoe ke lintho tse ngata tseo u e-s’o utloele ka tsona pele. Kahoo qala ho ithuta lihlooho tsena ka tatellano e nyolohang.

Haeba u sa matlafatse tsebo ea hau ka mor'a ho ithuta ntho e ncha, u tla lebala ntho e 'ngoe le e' ngoe kapele.
Ke khothaletsa hore ka mor'a hore u ithute algorithm e ncha, e sebelise ka ts'ebetso. E sebetsa ka makhetlo a 2-3. Batla tag ea algorithm ho SPOJ. Ha u le moo u tla fumana mathata a hlokang algorithm ena ho rarolla. Rarolla lintlha tsena pele.

Utloisisa Dynamic Programming Hobane e Tla U Isa Tlholong
Ho latela phihlelo ea ka, tlhōlisano e 'ngoe le e' ngoe e na le bonyane bothata bo le bong mananeo a matla. Batho ba bangata ba tšoaroa ke hlooho ha ba utloa poleloana "dynamic programming" hobane ha ba e utloisise ho hang.

'Me sena se molemo. Hobane haeba u utloisisa mananeo a matla, joale u tla hlōla.

Ke rata mananeo a matla, ke sehlooho seo ke se ratang haholo. Lekunutu la mananeo a matla ke ho etsa likhetho tse nepahetseng lefatšeng ka bophara, eseng tsa lehae feela. U tlameha ho arola bothata ka mathata a bonolo haholoanyane. Rarolla e 'ngoe le e 'ngoe ea mathata ana hang feela. Ebe u theha tharollo e kopanyang mathata a rarollotsoeng. Algorithm e meharo - se fapaneng le mananeo a matla. E hloka ho etsa khetho e nepahetseng sebakeng sa heno mohatong o mong le o mong. 'Me khetho e nepahetseng ea lehae e ka lebisa tharollong e mpe ea lefats'e.

Ha u ntse u ithuta likhopolo tse ncha, hlahloba Lithuto tsa TopCoder. Li na le lintlha tse ngata ebile lia utloahala. Ka lebaka la bona ke ile ka khona ho utloisisa lifate tsa binary indexed.

Sebetsa ka thata

Na u kile ua utloa ka baatlelete ba hapang Liolimpiki ntle le lilemo tsa boikoetliso? 'Na ha ho joalo.

Selemo se seng le se seng, litokisetso tsa Computer Olympiad li qalile ka September 'me li fela ka April.

Letsatsi le leng le le leng bakeng sa likhoeli tsena tse 8 ke ne ke ikoetlisa ka lihora tse 5.

E, ke qetile lihora tsena tsa 5 feela ke rarolla mathata a algorithmic. Ke hopola matsatsi ao ke neng ke ikoetlisa ka lihora tse 8 esita le tse 10. Hobaneng? Hobane ke ne ke e rata. Letsatsi le leng le le leng ha ke khutlela hae ke tsoa sekolong, ke ne ke ea ka phaposing ea ho robala, ke lula fatše k’homphieutheng ’me ka qala ho hlahloba bothata bo bong. Kapa ke ne ke ithuta algorithm e ncha eo ke neng ke hloka ho e tseba ho rarolla bothata bona.

Haeba u batla ho hlōla, u lokela ho etsa se tšoanang. Khetha bothata 'me u bo khomarele. Nahana ka eona ha u ntse u ea suphamaketeng kapa ha u ntse u khanna.

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Na u ne u tseba hore ha u robetse, boko ba hao bo senya boitsebiso bo bokeletsoeng letsatsing leo? Ho bonahala a bokella libuka ka tatellano ea alfabeta shelefong ea libuka. Ha e le hantle, boko ba hao bo nahana ka mathata a fapa-fapaneng ao u tobaneng le 'ona.

Sena se ka sebelisoa ka bohlale. Pele u robala, bala bothata bo thata 'me u hopole hore na ho hlokahala eng ho bo rarolla. Nakong ena, ha ho hlokahale hore u batle tharollo ka boeona. Tsa mo robala. Boko ba hau bo tla qala ho sebetsana le bothata bona. Ha u tsoha, u tla makala ha u hlokomela hore u fumane tharollo u ntse u robetse.

E leke uena. Ho tšoana le boselamose.

Ke thehile blog ea video

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Serapa sena se sekhutšoane ha se amane le mananeo a lipapali. Haeba u le lilemo li mashome a mabeli 'me u ipotsa hore na ke bona lefatše joang, u ka' na ua batla ho hlahloba blog ea ka ea video ho Youtube. Ke bua ka lefatše, bophelo le saense ea k'homphieutha ho lona.

Sebetsa ka bohlale

Sena ke sephiri sa katleho. U hloka lipakane.

Re batho mme re a e rata chechisa. Kamehla re batla ho chechisa se lokelang ho etsoa hona joale. Ho shebella Netflix kamehla ho monate ho feta ho sebetsana le mathata a matla a mananeo. O tseba sena mme o hloka ho se lokisa.

Mokhoa oa ho hlola tieho

Ipehele lipakane. U tla lula u fumana mathata a thahasellisang ao u ka ithutang ntho e ncha ho eona (sheba mehloli eo ke e boletseng ka holimo). Empa mathata ana a hloka ho rarolloa, eseng feela ho baloa.

Kahoo ke kamoo ke ileng ka hlōla ho lieha ho etsa lintho kateng. Ke ile ka qala almanaka ea pampiri ’me letsatsi ka leng ke tlatsa mathata ao ke neng ke batla ho a rarolla. Kamehla ke ne ke tlatsa mathata matsatsi a mabeli esale pele. Kahoo ke ne ke tseba ho laola nako ea ka matsatsing a latelang.

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad

Kahoo ke ne ke lula ke susumelletseha. Ke ne ke hloka ho rarolla mathata a mang le ho fumana a macha hore ke tlatse matsatsi a latelang almanakeng. Ho tlosa mathata a rarollotsoeng ho utloahala ho le monate. Kea tseba hore le uena ua e rata.

Fumana almanaka ea hau ea pampiri. Se ke oa iketsetsa lethathamo le leng la lintho tseo u lokelang ho li etsa fonong ea hau tseo u tla li lebala hosane.

Mokhoa oa ho lokisa liphoso ka katleho

Na u batla ho ba setsebi? Haeba ho joalo, joale u lokela ho "e lokisa kelellong ea hau."
Ona ke mokhoa o sebetsang ka ho fetesisa oa ho lokisa liphoso oo ke o tsebang hobane ha o hloke debugger ho hang. Boko ba hau bo hlahloba makala a mangata a khoutu ka nako e le 'ngoe' me e u fa pono e pharaletseng haholoanyane ea khoutu ha e bapisoa le debugger ea khale.

U ka ipapisa le setloholo se bapalang chess mme se nahana hore 3 e ea pele.

Ke sebelisa mokhoa ona feela e le mokhoa oa ka oa pele oa tšireletso. Ebe ke sebelisa debugger ea 'nete.

Ho ithuta ho lokisa liphoso hloohong ea hau, u hloka ho ikoetlisa. Ha o netefatsa tharollo bothateng mme o fumana "karabo e fosahetseng", o se ke oa ea ka kotloloho ho konopo ea debugger. Bala khoutu hape 'me u nahane: "Ho etsahala'ng moleng oo?", "Haeba" mona e ama lenaneo joang?", "Ha re tsoa ho lupu, boleng ba "iterator" ke bofe?

Ka tsela ena u nahana ka bouena. Ha nako e ntse e ea, u tla ithuta ho ngola khoutu le ho e lokisa hang-hang.

Mabapi le mongoli

Kamoo ke hapileng likhau tsa khauta tse 3 ho tse 4 ho Computing Olympiad
Andrei Margeloiu ke moqapi ea chesehang ea nang le thahasello ho tsa khoebo, ho qala le ho tsoa kantle. U ka ikopanya le eena ho LinkedIn.

Phetolelo: Diana Sheremyeva

Source: www.habr.com

Eketsa ka tlhaloso