എല്ലാ അൽഗോരിതംസും ഡാറ്റാ സ്ട്രക്ചറുകളും അടങ്ങിയിരിക്കുന്നതിനാൽ എല്ലാ മത്സര പ്രോഗ്രാമിംഗ് പ്രേമികൾക്കും ഒരിടമാണ് സിപി ഹാൻഡ്ബുക്ക്. എല്ലാ വിഷയങ്ങളിലും ഉദാഹരണങ്ങളും പരിശീലനത്തിനുള്ള പരിഹരിക്കപ്പെടാത്ത പ്രശ്നങ്ങളും അടങ്ങിയിരിക്കുന്നു.
മത്സര പ്രോഗ്രാമിംഗ് ഒരു കായിക വിനോദമാണ്, ഞാൻ അർത്ഥമാക്കുന്നത് അക്ഷരാർത്ഥത്തിൽ. ഏത് കായിക വിനോദവും നടത്തുക, ഇക്കാര്യത്തിൽ ക്രിക്കറ്റ് പരിഗണിക്കാം, നിങ്ങൾ ആദ്യമായി ബാറ്റ് ചെയ്യാൻ പോകുന്നു. സ്വിംഗും മിസ്സും, ഇത് രണ്ടുതവണ ചെയ്യുക, ഒടുവിൽ നിങ്ങൾ ഒരെണ്ണം കയറിൽ തട്ടും. ഇപ്പോൾ, ഒരു പ്രോഗ്രാമിംഗ് മത്സരത്തെ രൂപകമായി ക്രിക്കറ്റിന്റെ കളിയായി പരിഗണിക്കുക. ഒരു കോഡ് കംപൈൽ ചെയ്ത് സമർപ്പിക്കുക, നിങ്ങൾക്ക് ഒരു WA (തെറ്റായ ഉത്തരം) ലഭിച്ചേക്കാം.
കോഡിൽ മാറ്റങ്ങൾ വരുത്തുക, ഒടുവിൽ നിങ്ങളുടെ ആദ്യ എസി ലഭിക്കും (സ്വീകരിച്ചു / ശരിയായ ഉത്തരം). ഒരു പ്രോഗ്രാമിംഗ് മത്സരത്തിലെ 20% ചോദ്യങ്ങൾ നിങ്ങളുടെ പ്രിയപ്പെട്ട പ്രോഗ്രാമിംഗ് ഭാഷയുടെ ഒരു കോഡിലേക്ക് പ്ലെയിൻ ഇംഗ്ലീഷിന്റെ ലളിതമായ പരിവർത്തനമാണ്.
അതിലേക്ക് നടക്കുക, നിങ്ങൾ കൂടുതൽ കഠിനമായി കളിക്കുകയും മികച്ചതാകുകയും ചെയ്യുമ്പോൾ ഗെയിമിന്റെ അലിഖിത നിയമങ്ങൾ നിങ്ങൾ പഠിക്കും.
എന്നെ വിശ്വസിക്കൂ, ആരംഭിക്കുന്നതിന് നിങ്ങൾക്ക് ഏതെങ്കിലും “ഫാൻസി നെയിം” അൽഗോരിതം അല്ലെങ്കിൽ ഡാറ്റ ഘടന അറിയേണ്ടതില്ല. “വാഫ്റ്റ് ഷോട്ട്” എന്നതിനെക്കുറിച്ച് എപ്പോഴെങ്കിലും കേട്ടിട്ടുണ്ട്, എന്നിട്ടും നിങ്ങളുടെ തെരുവിലെ ഏറ്റവും മികച്ച ബാറ്റ്സ്മാനാണ് നിങ്ങൾ, അല്ലേ?
ശരി, ആദ്യത്തെ 20% പ്രോഗ്രാമിംഗ് പ്രശ്നങ്ങൾ നമുക്ക് ജയിക്കാം.
നിങ്ങൾ അറിയേണ്ടതുണ്ട്:
ഏതെങ്കിലും ഒരു പ്രോഗ്രാമിംഗ് ഭാഷയിൽ ഇന്റർമീഡിയറ്റ് ഹോൾഡ്
ഇംഗ്ലീഷ്! ഇംഗ്ലീഷിനെ കോഡിലേക്ക് പരിവർത്തനം ചെയ്യുക!
ഈ നിലയുടെ ഒരു ഉദാഹരണം നോക്കാം: ഭയങ്കര ചന്തു
നിങ്ങൾ ചെയ്യേണ്ടത്, STDIN- ൽ നിന്ന് ഇൻപുട്ട് ലൈൻ വായിച്ച് STDOUT ലേക്ക് ആ വരിയുടെ വിപരീതം പ്രിന്റുചെയ്യുക. മുന്നോട്ട് പോകുക, ഒരു സമർപ്പണം നടത്തുക. നിങ്ങളുടെ ആദ്യ എസി അന്വേഷിക്കുക. കൂടുതൽ ആഗ്രഹിക്കുന്ന? ഞങ്ങളുടെ പ്രാക്ടീസ് വിഭാഗത്തിൽ ലോഡുകൾ ലഭിച്ചു. ശരിയായ ആയിരക്കണക്കിന് സമർപ്പിക്കലുകൾ ഉള്ളവർക്കായി തിരയുക.
ശരി, ഇപ്പോൾ നിങ്ങൾ ചില യഥാർത്ഥ വെല്ലുവിളികൾ ഏറ്റെടുക്കാൻ തയ്യാറാണ്. മുറുകെ പിടിക്കുക, ഞങ്ങൾ കൂടുതൽ ആഴത്തിൽ മുങ്ങുകയാണ്.
നിങ്ങൾ അറിയേണ്ടതുണ്ട്:
1. അൽഗോരിതം അടുക്കുക, തിരയുക
2. ഹാഷിംഗ്
3. നമ്പർ തിയറി
4. അത്യാഗ്രഹ സാങ്കേതികത
കൂടുതൽ പ്രധാനമായി, അവ എന്ത്, എപ്പോൾ, എവിടെ പ്രയോഗിക്കണമെന്ന് നിങ്ങൾ കണ്ടെത്തണം. ഇത് ശരിക്കും തന്ത്രപ്രധാനമാണ്, അതിനാൽ തുടക്കക്കാരെ ആത്മവിശ്വാസം നേടാൻ സഹായിക്കുന്നതിന് ഞങ്ങൾ കോഡ് സന്യാസിയായി നിരവധി മത്സരങ്ങൾ നടത്തുന്നു. ഓരോ മത്സരത്തിനും മുമ്പ്, ഞങ്ങൾ ചില വിഷയങ്ങളെക്കുറിച്ചുള്ള ഒരു ട്യൂട്ടോറിയൽ പുറത്തിറക്കുകയും പിന്നീട് മത്സരത്തിൽ പ്രശ്നങ്ങൾ ആ പ്രത്യേക വിഷയത്തെ മാത്രം ലക്ഷ്യം വയ്ക്കുകയും ചെയ്യുന്നു. ട്യൂട്ടോറിയലുകളിലൂടെ പോയി ഓരോ വിഷയത്തിലും ഒന്നോ രണ്ടോ ചോദ്യങ്ങൾ പരിഹരിക്കാൻ ഞാൻ നിങ്ങളോട് ശുപാർശ ചെയ്യുന്നു.
ഞങ്ങൾ ചിന്തിക്കുന്ന രീതിയെ കബളിപ്പിക്കുന്നതിനാണ് ചോദ്യങ്ങൾ രൂപപ്പെടുത്തിയിരിക്കുന്നതെന്ന് ഇപ്പോൾ നിങ്ങൾ മനസ്സിലാക്കി. ചിലപ്പോൾ, നിങ്ങൾ പ്ലെയിൻ ഇംഗ്ലീഷ് കോഡിലേക്ക് പരിവർത്തനം ചെയ്യുകയാണെങ്കിൽ, നിങ്ങൾ TLE (സമയ പരിധി കവിഞ്ഞു) വിധിന്യായത്തിൽ അവസാനിക്കും. സമയ പരിധിയെ നേരിടാൻ നിങ്ങൾ ഒരു കൂട്ടം പുതിയ ടെക്നിക്കുകളും അൽഗോരിതങ്ങളും പഠിക്കേണ്ടതുണ്ട്. ചില സാഹചര്യങ്ങളിൽ, ഡൈനാമിക് പ്രോഗ്രാമിംഗ് (ഡിപി) രക്ഷാപ്രവർത്തനത്തിലേക്ക് വരുന്നു. വാസ്തവത്തിൽ, നിങ്ങൾ ഇതിനകം തന്നെ ഈ സാങ്കേതികവിദ്യ അവബോധപൂർവ്വം ഉപയോഗിച്ചിരിക്കാം. ഏത് മത്സരത്തിലും ഡിപിയ്ക്ക് പരിഹരിക്കാവുന്ന ഒരു ചോദ്യമെങ്കിലും എപ്പോഴും ഉണ്ടായിരിക്കും.
കൂടാതെ, ലീനിയർ അറേ ഡാറ്റ-ഘടനകളാൽ പരിഹരിക്കാനാകാത്ത ചോദ്യങ്ങളുണ്ടെന്ന് നിങ്ങൾ ശ്രദ്ധിച്ചു.
1. ഗ്രാഫ് തിയറി
2. ഡിജോയിറ്റ് സെറ്റ് യൂണിയൻ (യൂണിയൻ-കണ്ടെത്തൽ)
3. മിനിമം സ്പാനിംഗ് ട്രീ
ഈ സെറ്റ് ഡാറ്റാ സ്ട്രക്ചറുകൾ നിങ്ങൾക്ക് വേണ്ടത്ര ലഭിക്കും. മാത്രമല്ല, ഒരു ചോദ്യം പരിഹരിക്കുന്നതിനായി നിങ്ങൾക്കറിയാവുന്ന സാങ്കേതിക വിദ്യകൾ പരിഷ്ക്കരിക്കുക എന്നതാണ് യഥാർത്ഥ കലയെന്ന് നിങ്ങൾ കണ്ടെത്തി. എല്ലാ ഈസി-മീഡിയം, മീഡിയം ലെവൽ ചോദ്യങ്ങളും ഈ രീതിയിൽ കൈകാര്യം ചെയ്യാൻ കഴിയും.
ഹ്രസ്വ പ്രോഗ്രാമിംഗ് വെല്ലുവിളികളുടെ ലീഡർബോർഡുകളിൽ നിങ്ങൾ ഒന്നാമതെത്തുന്നു, സ്ഥിരമായ സ്ഥിരത നിലനിർത്തുക. ഞാൻ ഇതിനകം സൂചിപ്പിച്ചതുപോലെ, ഇതൊരു കായിക വിനോദമാണ്, നിങ്ങൾ അത് ചെയ്യുന്നതുവരെ നിങ്ങൾ അത് മാസ്റ്റർ ചെയ്യില്ല. മുന്നോട്ട് പോകുക, ഒരു ഹ്രസ്വ മത്സരത്തിൽ പങ്കെടുക്കുക, നിങ്ങളുടെ ശക്തിയും ബലഹീനതയും അറിയുക, ക്ലോക്ക് ടിക്ക് ചെയ്യുമ്പോൾ നിങ്ങൾ അഡ്രിനാലിൻ മോഡ് എങ്ങനെ കൈകാര്യം ചെയ്യുന്നുവെന്ന് കാണുക.
കഴിയുന്നിടത്തോളം കാലം നിങ്ങളുടെ സ്വന്തം യുക്തിയിൽ ഉറച്ചുനിൽക്കുക, ചോദ്യം പരിഹരിക്കുന്നതിന് ആവശ്യമായ അൽഗോരിതം പോലെയുള്ള എന്തെങ്കിലും നിങ്ങൾ ഒടുവിൽ കൊണ്ടുവരും. നിങ്ങൾ ഇത് ബ്രഷ് ചെയ്യേണ്ടതുണ്ട്. ചുറ്റുമുള്ള നിരവധി പ്രശ്നങ്ങൾ പരിഹരിക്കുന്നതിന് ഈ സാങ്കേതിക വിദ്യകൾ നിങ്ങളെ സഹായിക്കും.
1. സെഗ്മെന്റ് ട്രീ
2. സ്ട്രിംഗ് അൽഗോരിതംസ്
3. ശ്രമങ്ങൾ, സഫിക്സ് ട്രീ, സഫിക്സ് അറേ.
4. കനത്ത ലൈറ്റ് വിഘടനം
5. ഗ്രാഫ് കളറിംഗ്, നെറ്റ്വർക്ക് ഫ്ലോ
6. ചതുരശ്ര വിഘടനം.
അതിനാൽ ഈ സി പി ഹാൻഡ്ബുക്ക് ഡൗൺലോഡുചെയ്ത് പുതിയ കാര്യങ്ങൾ പഠിക്കുന്നത് ആസ്വദിക്കുക, സമയ സങ്കീർണ്ണതയോടെ കോഡ് ചെയ്യാൻ മറക്കരുത്.
അപ്ഡേറ്റ് ചെയ്ത തീയതി
2021, മാർ 21