ã³ãŒãã£ã³ã°ãã¹ããæ€èšŒæžã¿ã®10é±é宿ã«ãªãã¥ã©ã ã§æ»ç¥ãããïŒð
ã³ãŒãã£ã³ã°ãã¹ãè¬çŸ©
ã©ããéžã¹ã°ããã§ããããïŒ ð¬
ã³ãŒãã£ã³ã°ãã¹ãã®è¬çŸ©ã¯å€ãã§ãããå®éã«æ€èšŒãããè¬çŸ©ã¯ããã»ã©å€ããããŸãããç§ã¯å®éã«3幎éåŠçãæããã¢ã«ãŽãªãºã ãç¥ããªãåŠçãITå€§äŒæ¥ã«åæ Œãããçµéšãããšã«ããã®è¬çŸ©ãäœããŸããã
* å®éã«åŠçãã¡ãåæ ŒããåŸã«éã£ãŠãããã«ãã¯ïŒLINEïŒã®äžéšãæ·»ä»ããŸãã
[é
éã®é²æïŒããã«ã®æ°æïŒåæ Œ]
[LINEåæ Œ]
[LINEãã³ã¬(NAVER WEBTOON)åæ Œ]
[LINEã€ããŒ åæ Œ]
[ã«ã«ãªåæ Œ]
[ìŒì±é»å åæ Œ]
åæ Œè
ãã¡ã®
åè¬ã¬ãã¥ãŒã確èªããŠã¿ãŠãã ãã ðªsuccessful candidates ðªÄã trúng tuyá»n ðª
âïž [ãã£ãšå€ãã®åè¬ã¬ãã¥ãŒãèŠã«è¡ã]
C++ïŒç¥ããªããŠã倧äžå€«ã§ãïŒ
3幎ã®ããŠããŠãè©°ã蟌ãã ã¢ã«ãŽãªãºã ææ¬ã ãã§å¯èœã§ãã
æ©ããã°3æ¥ãé
ããŠã2é±éããã°ååã§ãïŒ
* 3幎éåŠçãæããŠããŠãC++ãç¥ããªãåŠçãçè§£ãããŸã§ã«ããã£ãæéã®æå°å€ãšæå€§å€ã§ãã
äŸé¡ãããŒã¹ã«ãC++ã®åºç€ããäžæ©ãã€äžå¯§ã«èª¬æããŸãã
ã³ãŒãã£ã³ã°ãã¹ãã«ããŸãã«ãå¿
èŠãªããŒã¿æ§é ããã³å
šè¬çãªC++ã®STLã®äœ¿ãæ¹ãã¹ãŠã芪åã«æããŸãã
ã³ãŒãã£ã³ã°ãã¹ãã«ããåºé¡ãããæ žå¿ããžãã¯ãå®è¡ã§ãããæãç°¡åã§å¹ççãªå¿
殺ã³ãŒãã説æããŸãã
ãåã£ãŠããã¯ããªã®ã«ããªãééã£ãŠãããã ããïŒããšããããããããããŠã§ãã«ïŒåãªéïŒããªã©ã®é »ç¹ã«çºçããæ©ãŸããç¶æ³ã解決ããããã®ããŠããŠãè©°ã蟌ã¿ãŸããã
ãã以å€ã«ããC++ãç¥ããªããŠããã®ææ¬äžåã§C++ã«ããã¢ã«ãŽãªãºã ãã§ããããã«ãC++ã®åºç€ãšæ§ã
ãªã³ãŒãã£ã³ã°ãã¹ãã®ããŠããŠãåçž®ãã200ããŒãžã®ææ¬ãå·®ãäžããŸãã
èš 440ããŒãžã®ææ¬ã§
C++ããã¢ã«ãŽãªãºã ã®æŠå¿µãŸã§å®ç§ã«
ã¢ã«ãŽãªãºã æŠå¿µææ¬ãC++ææ¬ãè§£èª¬ææ¬ãåãããŠãèš440ããŒãžã®PDFãã¡ã€ã«ãæäŸããŸãããããéããŠãæ¬åœã«å®ç§ã«ã¢ã«ãŽãªãºã ãåŠã¶ããšãã§ããŸãã
BOJïŒBaekjoon Online JudgeïŒäžäœ0.1%ã®
æé«æ°Žæºã®è§£èª¬ã³ãŒããæäŸããŸãã
ååé¡ã«ã¯ããŸããŸãªçãããããæé«ã®è§£çãšãããã®ãååšããŸããç§ã¯ãããè¯ãã³ãŒããšã¯äœãããçµ¶ããæ©ã¿ç¶ãã解説ã³ãŒããæ§ç¯ããŠããŸããã
* 1911çªã®åé¡ã®å Žåããã®åé¡ãè§£ããå
šã³ãŒãã®äžã§ã³ãŒãã©ã³ãã³ã°6äœãéæããæ§å
ãã以äžãè¯ãã³ãŒããçè§£ã§ããã³ãŒããæ¢ãããã«ã€ã³ã¿ãŒããããæ€çŽ¢ããŠæéãæµªè²»ããå¿
èŠã¯ãããŸããããã ããã®è¬çŸ©ã®ã解説ã³ãŒããã ããå匷ããã°ããã®ã§ããåè¬çã®ããã«æé«å質ã®ã³ãŒããæºåããããã«ç£šãäžããŸããã
åé¡ãè§£ã芳ç¹ããæãã
3幎ã®ç¹çŽããŠããŠãäŒæããŸãã
ãã ããã®ã³ãŒãã ãããã®åé¡ãè§£ããã®ã§ã¯ãªããã©ã®ãããªèгç¹ããããããã¯ã©ã®ãããªã¢ã€ãã¢ãããã®åé¡ããã®ããã«è§£ãã¹ãããªã©ã3幎éåŠçãæããŠããäžã§å®æãããããŠããŠãäŒæããŸãã
* BOJ 3986 è¯ãåèª åé¡ã®è§£èª¬
ãã®åé¡ã¯åçŽã«ã¹ã¿ãã¯ãå©çšããŠè§£ãåé¡ã§ãããã§ã¯ãªãã¹ã¿ãã¯ãèããã¹ããªã®ããã©ã®ããã«ã¹ã¿ãã¯ã䜿ãããšãæãã€ãã¹ããªã®ããªã©ãã©ã®ãããªã¢ãããŒãã§ã©ã®ããã«ã¢ã€ãã¢ãå°ãåºãã¹ãããè©³çŽ°ã«æããŸããçµæè«ãšããŠåºãŠããã³ãŒãã§ã¯ãªããåé¡ãè§£ãéçšã«éäžãããã"åé¡ãè§£ãæèã®æµã"ãæŽããŠãããŸãã
ã³ãŒãã£ã³ã°ãã¹ãã ãã§ãªã
å
šè¬çãªããŒã¿æ§é ãŸã§åŠã¶ããšãã§ããŸãã
ãã®è¬åº§ã¯ãã³ãŒãã£ã³ã°ãã¹ãã®ããã®ã¢ã«ãŽãªãºã èœåã身ã«ã€ããã ãã§ãªããå
šè¬çãªããŒã¿æ§é ããã£ãããšåŠã¶ããšãã§ããè¬åº§ã§ãããã®è¬åº§ã§ vectorãarrayãmapãunordered_mapãsetãmultisetãstackãqueue ãªã©ãå
šè¬çãªããŒã¿æ§é ãåŠã¶ããšãã§ããŸãã
JavaãJavaScriptã®èšèªã«
å¶éãããã£ãŠããã³ãŒãã£ã³ã°ãã¹ããŸã§å®ç§ã«ã
ããŸã«ã³ãŒãã£ã³ã°ãã¹ãã§ãJavaãJavaScriptãšããèšèªã®ã¿ã§åéšããªããã°ãªããªãå ŽåããããŸãããã®ãããªç¶æ³ã«åããŠãC++ã§åŠãã å
容ãããšã«ä»ã®èšèªã«å€æããéã®æ³šæç¹ããç¹ã«JavaãšJavaScriptã§éç¹çã«åŠç¿ãã¹ãæ žå¿çãªããžãã¯ã説æããåç»ãŸã§çšæããŠãããŸããã
https://youtu.be/-zGFtwIiJ4s
160åãã³ãŒãã£ã³ã°ãã¹ãã«ãŸãã«å¿
èŠãª
åé¡ãšè§£èª¬è¬çŸ©ãæäŸããŸãã
äžã®äžã«ã¯æ¬åœã«å€ãã®åé¡ããããŸããäŸãã°å®è£
ã«ã¯ããããæé€æ©ãªã©ä»£è¡šçãªåé¡ããããŸããç§ã¯3幎éãåŠçãã¡ãçŽæ¥æããªãããã©ã®ãããªåé¡ãã©ã®ãããªé åºã§ã©ããããè§£ãã°ã³ãŒãã£ã³ã°ãã¹ãã«åæ Œã§ããã®ããå®éšã«å®éšãéããŸããããã®çµæãå³éžãã160åãçããã«å
¬éããŸãã
äžã®äžã«ã¯ç°¡åãªåé¡ããããŠå°ãªãå顿°ãè§£ãè¬çŸ©ãå€ãã§ããããããç°¡åãªåé¡ãå°ãªãå顿°ãè§£ãã ãã§ã¯ã決ããŠã³ãŒãã£ã³ã°ãã¹ãã«åæ Œããããšã¯ã§ããŸããããã®è¬çŸ©ã¯3幎ã«ããã£ãŠæ€èšŒãããã«ãªãã¥ã©ã ã«åºã¥ããéåœã§å¯äžç¡äºã®ãå®ã«160åãã®åé¡ãè§£ãè¬çŸ©ã§ãããã ãã®è¬çŸ©ã§åºãããåé¡ããè§£ãã°ãã³ãŒãã£ã³ã°ãã¹ãã«åæ Œã§ãããããæ©ã¿æããç§ã®æéã蟌ããããè¬çŸ©ã§ãã

ãã以äžã¯ãééã£ãæ¹æ³ã§ã¢ã«ãŽãªãºã ãå匷ããªãã§ããã ãããã§ãã
ããè¯ãã³ãŒããçè§£ã§ããã³ãŒããæ¢ããŠããããããããªããå匷ãããããªããšã¯ããããã以äžããªãã§ã»ãããšæããŸãã
çããã®æéãç¡é§ã«ããã
ãã®è¬çŸ©äžã€ã§ãã³ãŒãã£ã³ã°ãã¹ãããå®çµãããŠãã ããã
ã«ãªãã¥ã©ã ã
確èªããŠã¿ãŠãã ããã ðð ð
ãŸããC++ã¢ã«ãŽãªãºã ææ¬ãå®å
šã«åŠç¿ãã ïŒ æŠå¿µè¬çŸ© ïŒ èªåã§åé¡ãè§£ã ïŒ è©²åœã®åé¡è§£èª¬è¬çŸ©ãèŽããªããåŠç¿ãé²ããŠãã ãããå®è£
ãDFSãBFSãããªãŒå·¡åãå®å
šæ¢çŽ¢ãããã¯ãã©ããã³ã°ãããããã¹ãã³ã°ãªã©ãã³ãŒãã£ã³ã°ãã¹ãã§äž»ã«åºé¡ãããæŠå¿µãäžå¿ã«åŠç¿ããåé±ããšã®æšå¥šåé¡ïŒèš160åïŒãæäŸãããŸãã
èšç®éãååž°é¢æ°ã
环ç©åãå®è£
ã°ã©ãçè«ãDFSãBFSã
ããªãŒå·¡å
å®å
šæ¢çŽ¢ãããã¯ãã©ããã³ã°
ããããã¹ãã³ã°
æ¬²åŒµãæ³ïŒã°ãªãã£ïŒãã©ã€ã³ã¹ãŠã£ãŒãã³ã°ã
2ã€ã®ãã€ã³ã¿ïŒããŒãã€ã³ã¿ïŒ
äºåæ¢çŽ¢ãš
LIS (æé·å¢å éšåå)
DP (åçèšç»æ³)
ãã§ããã¯æšãš
æççµè·¯ã¢ã«ãŽãªãºã
ã³ãŒãæºåå®äºïŒ
ãã®è¬çŸ©ã¯
äœãéãã®ã§ããããïŒ ð
-
â
ã³ãŒãã£ã³ã°ãã¹ãåæ Œã®ããã«å³éžãã160åã®æšèŠåé¡
-
â
160åã®BOJïŒBaekjoon Online JudgeïŒåé¡è§£èª¬è¬çŸ© trên Baekjoon (BOJ)
-
â
ã¢ã«ãŽãªãºã äžäœ0.1%ã®è¬åž«ãæäŸããæé«æ°Žæºã®è§£èª¬ã³ãŒã
-
â
8é±éã§çµãããã ã³ãŒãã£ã³ã°ãã¹ã å¿
é æŠå¿µè¬çŸ© vá» luyá»n thi Coding Test
-
â
C++ãç¥ããªããŠã倧äžå€«ïŒ200ããŒãžã®ã¢ã«ãŽãªãºã çšC++ååææãæäŸïŒ
- ã³ãŒãã£ã³ã°ãã¹ãåæ Œã«å¿
èŠãªãã¹ãŠã®ç¥èãåŠã¶ããšãã§ãã
- éåœæé«ã®ã³ãŒãã£ã³ã°ãã¹ãè¬çŸ©
- ä»ãå§ãŸããŸãã
å¹³åè©äŸ¡5.0ïŒ
æé«ã®è¬çŸ©ã§ããããšãèªè² ããŸãã ð¥
https://www.inflearn.com/pages/2022-award
ç§ã¯ç¶ç¶çã«ã¢ããããŒããããè¬çŸ©ãããæé«ã®è¬çŸ©ã§ãããšèããŠããŸããããã蚌æããããã«ã2022幎ã«ã¯ãã€ã³ãã©ã³å
ã®å
šè¬çŸ©ã®äžã§æãå€ãã®ã¢ããããŒããè¡ã£ãè¬çŸ©ã«éžã°ããŸãããåžžã«åè¬çã®ãã£ãŒãããã¯ãªã©æ¹åãã¹ãç¹ãè¿
éã«åæ ããæé«ã®è¬çŸ©ãæäŸã§ããããåªããŠãŸãããŸãã
ç§ã®è¬çŸ©ã¯ãåè¬çãããªãééã£ãŠããã®ãããšãã質åãããéã«ãè¿
éãã€èª å¿èª æãçãããããšã§æåãªè¬çŸ©ã§ããããŸããããã蚌æãããã®ããã«ã2024幎ã®Inflearnã¢ã¯ãŒãã§ã¯ãä»å¹Žæãå€ãã®åçãæ®ããç¥èå
±æè
ã«éžã°ããŸãããåžžã«åè¬çã®è³ªåã«å¯ŸããŠæé«ã®åçãã§ããããåªããŠãŸãããŸãã :)
ãããã質åã
ã確èªãã ããã ð¬ð¬ ð¬
Q. ç§ãå¿æããäŒæ¥ã®ã³ãŒãã£ã³ã°ãã¹ãã®èšèªãC++ã§ã¯ãªãã®ã§ããã倧äžå€«ã§ããããïŒ
ã¯ãã倧äžå€«ã§ãããã®è¬çŸ©ã§å匷ããŠãJavaãJavaScriptãªã©ã«ç§»æ€ããŠã³ãŒãã£ã³ã°ãã¹ããåããåæ Œããåè¬çãããããèŠãŠããŸãããå®éãä»ã®èšèªã«å€æããã®ã¯ããã»ã©é£ãããããŸãããäŸãã°ãC++ã§vectorã«èŠçŽ ã远å ããã«ã¯push_back()ãšãã颿°ã䜿ããŸãããïŒJavaã§ã¯append()ããJavaScriptã§ã¯push()ã䜿ããŸãããã®ãããªäºçްãªéããããªããããã¢ã«ãŽãªãºã ãåŠã³ãããèšèªã§ããC++ã§ããããŠãã®è¬çŸ©ã§å匷ããåŸã«ãããã³ãŒãã£ã³ã°ãã¹ãã§ä»ã®èšèªã䜿ããªããã°ãªããªãå Žåã¯ããã®èšèªã«ç§»æ€ããŠåããããšãããããããŸãã
ã³ãŒãã£ã³ã°ãã¹ããåããåã«ãã®éšåã®ç·Žç¿ãå°ãããå¿
èŠããããŸãããããã»ã©æéã¯ããããŸãããC++ã§åŠãã åŸããããã¹ãã§Javaã䜿ããªããã°ãªããªããšãªã£ãå Žåããã®éšåãç·Žç¿ããã®ã«åè¬çã®å¹³ååºæºã§éåžž1æ¥ããã°æºåãå®äºããŠããããã§ãã
ã¡ãªã¿ã«ã該åœéšåã«åããããã®åç»ãçšæããŠãããŸããåèã«ããŠãã ããã :)
https://youtu.be/-zGFtwIiJ4s
Q. ã³ãŒãã£ã³ã°ãã¹ãã§ã¯ãªããã¢ã«ãŽãªãºã ãå匷ããç®çã§ãã®è¬çŸ©ãåè¬ããŠã倧äžå€«ã§ããããïŒ
ã¯ãã倧äžå€«ã§ããå®éãæ€çŽ¢ããŒã¯ãŒãã®ããã«ãã®è¬çŸ©ã®ã¿ã€ãã«ãã10é±å®æ C++ã³ãŒãã£ã³ã°ãã¹ãããšããŠããŸãããã10é±å®æ C++ã¢ã«ãŽãªãºã ããšããŠãå·®ãæ¯ããããŸãããéåžžã«å€ãã®åé¡ïŒ160åïŒã解説ããªããã¢ã«ãŽãªãºã å
šè¬ã®æŠå¿µãæ±ããåé¡ã®é£æåºŠãæé«ã§ãã©ãããŸã§ã®é£ããåé¡ãæ±ããããã¢ã«ãŽãªãºã å
šè¬ã®å
容ãå匷ããã®ã«åœ¹ç«ã€ã¯ãã§ãã
Q. éå°éå®¶ã§ãã倧äžå€«ã§ããããïŒ
ã¯ãã倧äžå€«ã§ãããã ããå¿
ãããã°ã©ãã³ã°ãã§ããå¿
èŠãããã1ã€ä»¥äžã®èšèªãããŒã¹ã«ããžãã¯ãå®è£
ã§ããã®ã§ããã°åé¡ãããŸããã
Q. ããã§æäŸãããåé¡ã ããè§£ããŠãã³ãŒãã£ã³ã°ãã¹ãã«åæ Œã§ããã§ããããïŒ
ã¯ãã倧æµã®äŒæ¥ã®ã³ãŒãã£ã³ã°ãã¹ãã«ã¯å¿
ãåæ Œã§ãããšèªè² ããŠããŸããããã¯ãã¢ã«ãŽãªãºã ãå
šãç¥ããªãã£ãåŠçããã®ã«ãªãã¥ã©ã ã ãã§NAVERãã«ã«ãªããµã ã¹ã³ãªã©ã®äŒæ¥ã®ã³ãŒãã£ã³ã°ãã¹ãã«åæ ŒãããçµéšããããããæèšããŠãäŒãããŸãã
Q. åé¡ãè§£ããåŸã§ããè¬çŸ©ãè§£çãèŠãã¹ãã§ããïŒ
ã¯ããããã§ããäŸãã°ãåè¬çã®ã³ãŒãã10è¡ãªã®ã«ç§ã®äœã£ãè§£çã1è¡ã§ããã°ãç§ã®è§£çãæžãåãã¹ãã§ããããè¯ãã³ãŒããæžãããã«ãç§ã®ã³ãŒããèŠãªããããäžåºŠåŸ©ç¿ããéçšãå¿
èŠã§ãã
Q. 質åãããäœæ¥ä»¥å
ã«åçããã ããŸããïŒ
æ©ããã°1æé以å
ã«åçãåãåãããšãã§ããŸãããéåžžã¯1ã3æ¥ä»¥å
ãšãèããã ãããïŒé±æ«ããã³ç¥æ¥ãé€ãïŒ