ืืชืืื ื ืชื ืืืืจ ืืืืคืืช ืืขืืื ืฉื Google HashCode 2017. ืืืื ืืชืืจืืช ืืืืืื ืืืืชืจ ืขื ืืขืืืช ืืืืืจืืชืืืืช ืฉืืืจืื ื ืขื ืืื ืืืื.
ืืชืืืชื ืืืืื C++ ืืืคืก ืืืืชื ื'. ืื ืืืขืชื ืืืจ ืขื ืชืื ืืช, ืืืืืจืืชืืื ืื ืืื ื ื ืชืื ืื. ืืฉืื ืืกืืื ืืชืืชื ืืช ืฉืืจืช ืืงืื ืืจืืฉืื ื ืฉืื. ืฉืืขื ืืืืฉืื ืืืืจ ืืื, ืชืืจืืช ืืชืื ืืช ื ืจืืชื ืืืืคืง. ืจืฆืืชื ืืจืืืช ืขื ืืื ืกืื ืื ืืืืืื ืืชืื ืืช ืฉืื ืขืืื. ืื ืืืืชื ืืืืืื ืืช ืืืืฉืืืช.
ืืืจื ืืืืืื ืฉื ืชืืจืืช ืืืืขื ืืชืืฆืืืช: ืืืืชื ืืืืืืืช ืืืื.
ืืืืชื ืืืื. ืืงืืืชื ืืชืืจืื ืขื 5 ืฉื ืืช ื ืืกืืื. ืืืขืชื ืฉืขืืืชื ืงืฉื, ืืื ืืืืฉื ืืื ืขืื ืขื ืื ืืฆืืคืืืช ืฉืื. ืืื ืชื ืฉืชืื ืืช ืกืคืืจื ืืื ืื ืืฉื ืฉืื ืืืชืขืืงืชื ืื.
ืื ื ืืืืข ืื ืืืืื ืืืชื ืืืฆืืื ืืื ื ืจืืฆื ืืืืืง ืืช ืื ืืืชื.
ืืืืืจ ืชืืจืื ืืชืืืืช EDISON Software, ืืฉืจืืืื ืืืจืืืืช ืืืชืื ืชืื ืืืืจืืืช ืืืืงืจ ืฉืืื ื -ืืคืชืืช ืชืืื ื ืืืชืืื ืืืฉืืช .
ืืืืื ืฉืคืช ืชืื ืืช ืืืืืจ
- C++ - ืืืืืฅ ืืืื! ืืื ืืืืจ ืืืื. ืืืฉืื ืฉื ืืืืืจืืชืืื ืืืงื ืืขื ืืื ืืืื STL. C++ ืืชืงืื ืืื ืืชืืจืืืืช. ืืชืืชื ืืช ืฉืืจืช ืืงืื ืืจืืฉืื ื ืฉืื ื-C++.
- C - ืืื C++ ืืืื ื-STL. ืื ืืชื ืืืืข C, ืืชื ืืืื ืื ืืชืื ืช ื-C++.
- Java ืืื ืฉืคืช ืชืื ืืช ืืืืืช. ืืฉ ืื ืืืืงื ืฉื ืืกืคืจ ืฉืื ืืืื, ืืื ืื ืื ืืขืืืจ ืื ืืจืื. ืื ืืชืืจืืช ืืฉ ืืืืืช ืืื, ืขื Java ืืชื ืืืืืื ืชืืจืื ืืื ื. Java ืื ืืชืงืืืช ืืื ืืชืืจืืืืช.
ืืืคื ืืคืฉืจ ืืืชืืื
ืื ื ืืืืืฅ
ืจืืฉืืช, ืขืืื ืืืื ืืช ืืืืข ืฉืื ืืืกืืืืช
ืืจืืข ืฉืืชืจืืืื ืืชืืืืจ ืฉื ืืฉืคื, ืืฉ ืืื ืืขืืืช ืฉืฆืจืื ืืืชืืืจ ืขืืืื. ืืชืื ืขื ืืขืืืช ืคืฉืืืืช ืืืืจืฉืืช ืชืจืืื. ืืฉืื ืื, ืืขืืงืจ ืืื ืืงืืืข ืืช ืกืื ืื ืืชืื ืืช ืฉืื. ืืืื ืืชื ืืืื ืืืชืื ืงืื ืขื ืืจืื ืจืืืืื, ืืืื ืืชื ืื. ืืืื ืืืืืช ืฉืืชื ืฉื ืืช ืืกืืืจืืื ืขื ืืืชื ืฉืืจื ืฉื ื"ืื", ืื ืฉืืชื ืฉื ืืืชื ืขื ืฉืืจืืช ื ืคืจืืืช.
ืืชื ืฆืจืื ืืืฆืื ืืช ืกืื ืื ืืชืื ืืช ืฉืื ืื ืื ืืกืื ืื ืฉืื.
ืืฉืืชื ืืืคืฉ ืืืชื, ืืืืจ ืฉื ื ืขืงืจืื ืืช ืืกืืกืืื:
- ืืงืื ืฉืื ืฆืจืื ืืืืืช ืงื ืืืืฉืื. ืืชื ืฆืจืื ืืืจืืืฉ ืื ืื ืืืืฉื ืืช ืืคืชืจืื ืฉืืืฆืืช. ืืื? ืื ืืืืื ืชืืจืืช, ืืืืจ ืืืืจืื ืฉืืชื ืจืืฆื ืืื ืืืืช ืืืืืื ืืงืื ืฉืื. ืชืืื ืขืืืฃ ืืืฉืงืืข 5 ืืงืืช ื ืืกืคืืช ืืืืฉืื ืืืฆื ืืคืฉื ืืช ืืืืฉืื ืฉื ืืงืื ืืืฉืจ ืืืฉืงืืข 10 ืืงืืช ืื ืืกืืื ืืืืื ืืืช.
- ืืงืื ืฉืื ืฆืจืื ืืืืืช ืงื ืืงืจืืื. ืืืฉืจ ืงืื ืงื ืืงืจืืื, ืงื ืื ืคืืช ืืืืื. ืืืื ื ืืื ืืื - ืืืืื ืงืืจืื ืื ืืืื. ืืชื ืืืืจ ืืช ืืืจืืฉื ืืื ืืฉื ืืชืจื ืื 10 ืืงืืช ืืืชื ืื ืืืฆื ืืช ืืืขืืช ืืืจืืจื? ืืืืื ืฉืืชื ืื. ืืื ืืืืื ืข ืืืฆื ืื, ืืชืื ืงืื ืงืจืื. ืืจืืข ืฉืชืชืืื ืื ืคืืช ืืืืื, ืืงืื ืืืจืื ืืืขื ืืงื ืืืื ื.
ืืืฆื ืืฉืคืจ ืืช ืืืฉืืจื ืืคืืชืื ืฉืื
ืชืจืืื, ืชืจืืื ืืขืื ืชืจืืื. ืื ื ืืืืืฅ ืื ืืขืืืจ ืขื 250 ืืืขืืืช ืืจืืฉืื ืืช ืื ืืชื ืืช ืืคืชืจืื
ืื ืชืืื: "ืืืขืื ืืืืช ืงืฉื ืื ืืื, ืื ื ืื ืกื ืืคืชืืจ ืืช ืืืขืื ืืืื". ืื ืืืฉืืื ืืืืจืื.
ืงื ืคืืกืช ื ืืืจ ืืขืืคืจืื. ืชืืฉืื ืขื ืื. ืืืื ืชืืฆื ืคืชืจืื, ืืืื ืื. ืืื ืืคืืืช, ืชืคืชื ืืฉืืื ืืืืืจืืชืืืช. ืื ืืื ืื ืืฆืืืืื ืืืืืข ืืคืชืจืื ืชืื ืฉืขื, ืืคืฉื ืคืชืจืื ืืืื ืืคืืจืื ืื ืืืืืจืื.
ืื ืชืฉืื ืขื ืืืฉื ืื? ืืื ืืืืฉื ืืืืืจืืช ืืช ืืจืขืืื ืืช ืฉืื ืืืืฆืขืืช ืงืื. ืืืื ืืขืืืช ืืืืืืจืืชืืื ืงืืืกืืื.
ืฉื ืืช, ืขืืื ืืฉืืื ืืืืืืจืืชืืื ืืืืื ื ื ืชืื ืื
ืคืขื ืืคื ืืืฉื ืืืจืจืืืช. ืืชืืืช ืืจืืฅ ืืื ืืืขืช ืืืืช? ืื. ืืื ืืชื ืืืื ืืื ืืช ืืืจื ืฉืืงืื ืืื ืืกืืก ืืืฆืง? ืื ืฉืื.
ืื ืืคืฉืจ ืืืชืขืื ืืืฉืืืื ืืืืจื ืืกืืื ืืืืืื. ืื ืชืชืขืื ืืื, ืชืืฉืืจ ืขื ืคืขืจื ืืืข. ืขื ืืืื ืื ืจืง ืืืืืจื.
ืืชืื ืขื ืืืืืจืืชืืื ืืกืืกืืื ืืืื ื ื ืชืื ืื
ืงืฉื ืืืชืืื. ืืืื ืืืื ืฉืืชื ืื ืืืืข ืื ืืืืื ืงืืื. ืืืื ืื
ืื ืชืขืืื ืขื ืคืชืจืื ืืขืืืช ืงืืืช, ืืขืืื ืื ืชืฉืชืคืจ.
ืืืจื ืืืขืืื ืืืืชืจ ืืืืื ืืช ืื ืฉืืื ื ืืืืข ืืื ืืืืืช ืืืช ืืคืืขื. ืื ืืืืชื. ืืืืชื ืืื ืืงืืช ืืืฉืืช ืจืืืช ืฉืื ืฉืืขืชื ืขืืืื ืงืืื ืืื ืขื ืืื ืืืืจืช ืืฉืืื ืืืชืืจืช.
ืื ืืขืื ืฉืืืฉืืช ืฉืืชื ืขืืื ืขืืื ืืืืจื ืืืื ืืืชื ืืฉืื ืืืฉ. ืืืืืจ ืืืชืจ ืืืืืจืช ืืขืืืช. ืืืจ ืืขืืืช ืงืฉืืช ืืืชืจ!
ืืืืจ ืฉืชืฉืืื ืืช 250 ืืืขืืืช ืืืื ื-SPOJ, ืชืืื ืื ืืื ื ืืกืืกืืช ืฉื ื ืืฉืื ืืืืื ืฉื ืชืื ืืช ืกืคืืจื. ืขื ืืื ื ืขืืืงื ืฉื ืืืืืืื ืืืืืจื ืืืืืจืืชืืื ืืกืืกืืื, ืืืืืจืืชืืื ืืจืื ืืืืื ืืืจืื ืคืืืช ืืืจืืืื. ืื ืชืืื ืืืคืืง ืืช ืืืจื ืืืืืข ืฉืื.
ืืคืจื ืขืืืง ืืืชืจ ืืื ืืื ืืื ืืฉืืื ืืืจืืืืื
ืื ืื ืชืืืง ืืช ืืืืข ืฉืื ืืืจื ืฉืืืืช ืืฉืื ืืืฉ, ืืืจ ืืืื ืชืฉืื ืืื.
ืื ื ืืืืืฅ ืฉืืืจื ืฉืชืืืื ืืืืืจืืชื ืืืฉ, ืืฉืชืืฉื ืื ืืคืืขื. ืขืืื ืขื ืื ืืืืฆืขืืช 2-3 ืืฉืืืืช. ืืคืฉ ืืช ืชื ืืืืืืจืืชื ื-SPOJ. ืฉื ืชืืฆืื ืืขืืืช ืฉืฆืจืืืืช ืืคืชืืจ ืืช ืืืืืืจืืชื ืืื. ืืคื ืืืขืืืช ืืื ืชืืืื.
ืืื ืชืื ืืช ืืื ืื ืื ืื ืืืืื ืืืชื ืื ืืฆืืื
ืื ืืกืืื ื, ืืื ืชืืจืืช ืืฉ ืืคืืืช ืืขืื ืืืช
ืืื ืืื. ืื ืื ืืชื ืืืื ืืชืื ืืช ืืื ืื, ืื ืชื ืฆื.
ืื ื ืืืื ืชืื ืืช ืืื ืื, ืื ืื ืืฉื ืืืืื ืขืืื. ืืกืื ืฉื ืชืื ืืช ืืื ืื ืืื ืืขืฉืืช ืืืืจืืช ืืืคืืืืืืืช ืืขืืื, ืื ืจืง ืืงืืืืืช. ืืชื ืืืื ืืคืจืง ืืช ืืืขืื ืืชืช-ืืขืืืช ืคืฉืืืืช ืืืชืจ. ืคืชืืจ ืื ืืืช ืืืขืืืช ืืืฉื ื ืืืื ืคืขื ืืืช ืืืื. ืืืืจ ืืื ืฆืืจ ืคืชืจืื ืืืฉืื ืืช ืืขืืืช ืืืฉื ื ืฉื ืคืชืจื.
ืชืื ืืื ืืืืื ืืืฉืืื ืืืฉืื, ืืืืง
ืขืืื ืงืฉื
ืฉืืขืชื ืคืขื ืขื ืกืคืืจืืืื ืฉืื ืฆืืื ืืืืืืืคืืืื ืืื ืฉื ืื ืฉื ืชืจืืื? ืื ื ืื.
ืืื ืฉื ื ืืืื ืืืื ืืช ืืืืืืืคืืืืช ืืืืฉืืื ืืกืคืืืืจ ืืืกืชืืืื ืืืคืจืื.
ืื ืืื ืืืฉื 8 ืืืืืฉืื ืืืื ืืชืืื ืชื ืืืฉื 5 ืฉืขืืช.
ืืื, ืืืืืชื ืืช 5 ืืฉืขืืช ืืืื ืจืง ืืคืชืจืื ืืขืืืช ืืืืืจืืชืืืืช. ืื ื ืืืืจ ืืช ืืืืื ืฉืืื ืืชืืื ืชื 8 ืืืคืืื 10 ืฉืขืืช. ืืื? ืื ืืืืชื ืืช ืื. ืืื ืืื ืืฉืืืจืชื ืืืืชื ืืืืช ืืกืคืจ, ืืืืชื ืืฉืจ ืืืืจ ืืฉืื ื, ืืชืืืฉืืชื ืืื ืืืืฉื ืืืชืืืชื ืื ืชื ืืขืื ืืืฉื. ืื ืฉืืืืชื ืืืืืจืืชื ืืืฉ ืฉืืืืชื ืฆืจืื ืืืขืช ืืื ืืคืชืืจ ืืช ืืืขืื ืืื.
ืื ืืชื ืจืืฆื ืื ืฆื, ืืชื ืฆืจืื ืืขืฉืืช ืืช ืืืชื ืืืืจ. ืืืจ ืืขืื ืืืืฆืื ืืืื. ืืฉืื ืขื ืื ืืืื ืืืืื ืืกืืคืจ ืื ืืืื ื ืืืื.
ืืื ืืืขืช ืฉืืืฉืจ ืืชื ืืฉื, ืืืื ืฉืื ืืืื ืืช ืืืืืข ืฉื ืืกืฃ ืืืืชื ืืื? ื ืจืื ืฉืืื ืขืืจื ืกืคืจืื ืืกืืจ ืืืคืืืชื ืขื ืืืฃ ืกืคืจืื. ืืขืืงืจื ืฉื ืืืจ, ืืืื ืฉืื ืืืฉื ืขื ืืืขืืืช ืืฉืื ืืช ืฉืืชื ืืชืืืื ืืืชื.
ืื ืืืื ืืฉืืฉ ืืืืืื ืืช. ืืคื ื ืืฉืื ื, ืงืจื ืืขืื ืงืฉื ืืืืืจ ืื ื ืืจืฉ ืืื ืืคืชืืจ ืืืชื. ืืฉืื ืื ืืื ืฆืืจื ืืืคืฉ ืืช ืืคืชืจืื ืขืฆืื. ืื ืืืืื. ืืืื ืฉืื ืืชืืื ืืขืื ืืช ืืืขืื ืืื. ืืฉืชืชืขืืจืจื, ืชืืคืชืขื ืืืืื ืฉืืฆืืชื ืืช ืืคืชืจืื ืืืื ืฉืืฉื ืชื.
ื ืกื ืืืช ืืขืฆืื. ืื ืืื ืงืกื.
ืืฆืจืชื ืืืื ืืืืื
ืืคืกืงื ืืงืฆืจื ืืื ืื ืงืฉืืจื ืืชืื ืืช ืกืคืืจื. ืื ืืชื ืืฉื ืืช ืืขืฉืจืื ืืืืื ืืชืืื ืืื ืื ื ืจืืื ืืช ืืขืืื, ืืืื ืชืจืฆื ืืืืืง
ืชืขืืื ืืื
ืืื ืกืื ืืืฆืืื. ืืชื ืฆืจืื ืืืจืืช.
ืื ืื ื ืื ืฉืื ืืื ืื ื ืืืืืื ืืช ืื
ืืื ืื ืฆื ืืช ืืืืืื ืืช
ืืฆืืื ืืขืฆืืื ืืืจืืช. ืชืืื ืชืืฆื ืืขืืืช ืืขื ืืื ืืช ืืื ืชืืื ืืืืื ืืฉืื ืืืฉ (ืืืืง ืืช ืืืฉืืืื ืฉืืืืจืชื ืืืขืื). ืืื ืฆืจืื ืืคืชืืจ ืืช ืืืขืืืช ืืืื, ืื ืจืง ืืงืจืื ืขืืืื.
ืื ืื ื ืืื ืืชืืืจืชื ืขื ืืืืืื ืืช. ืคืชืืชื ืืืื ื ืืืจ ืืืืืืชื โโืื ืืื ืืืขืืืช ืฉืจืฆืืชื ืืคืชืืจ. ืชืืื ืืืืืชื โโืืขืืืช ืืืืืื ืืจืืฉ. ืื ืืืขืชื ืืื ืื ืื ืืช ืืืื ืฉืื ืืืืื ืืืืื.
ืื ืชืืื ืืืืชื ืื ืืืืืืฆืื. ืืืืชื ืฆืจืื ืืคืชืืจ ืืื ืืขืืืช ืืืืฆืื ืืืฉืืช ืืืื ืืช ืืืืื ืืืืื ืืืื ืืฉื ื. ืืฆืืืช ืืขืืืช ืฉื ืคืชืจื ืืจืืืฉ ื ืืืจ. ืื ื ืืืืข ืฉืื ืืชื ืืืื ืืช ืื.
ืงืื ืืืื ื ืืืจ ืืฉืื. ืื ืชืืฆืืจ ืขืื ืจืฉืืืช ืืืืืช ืืืืคืื ืฉืื ืฉืชืฉืื ืืื ื ืืืจ.
ืืืฆื ืืืฆืข ื ืืคืื ืืืืื ืืืขืืืืช
ืืื ืืชื ืจืืฆื ืืืืืช ืืงืฆืืขื? ืื ืื, ืื ืืชื ืฆืจืื "ืืคืชืืจ ืืช ืื ืืจืืฉ ืฉืื."
ืืืื ืืื ืกืคืง ืืื ืืงืช ื ืืคืื ืืืืืื ืืืขืืื ืืืืชืจ ืฉืื ื ืืืืจ ืื ืืื ืืื ื ืืืจืฉืช ืืื ื ืืคืื ืืืืื. ืืืื ืฉืื ืืืื ืืกืคืจ ืขื ืคื ืงืื ืืืช ืืืช ืื ืืชื ืื ืกืงืืจื ืืจืื ืืืชืจ ืจืืื ืฉื ืืงืื ืืืฉืืืื ืื
ืืชื ืืืื ืืืฉืืืช ืืช ืขืฆืื ืืจื-ืืืกืืจ ืฉืืฉืืง ืฉื ืืืืฉื 3 ืืืืืื ืงืืืื.
ืื ื ืืฉืชืืฉ ืืืื ืืงื ืื ืื ืืจืง ืืงื ืืืื ื ืืจืืฉืื ื ืฉืื. ืืืจ ืื ืื ื ืืฉืชืืฉ ืืืืื ืืืืชื.
ืืื ืืืืื ืืื ืืืฆืข ื ืืคืื ืืืืื ืืจืืฉ ืฉืื, ืืชื ืฆืจืื ืืืชืืื. ืืืฉืจ ืืชื ืืืืช ืคืชืจืื ืืืขืื ืืืงืื "ืชืฉืืื ืฉืืืื", ืื ืชืื ืืฉืจ ืืืืฆื ื ืืคืื ืืืืืื. ืงืจืื ืฉืื ืืช ืืงืื ืืืฉืื: "ืื ืงืืจื ืืฉืืจื ืืื?", "ืืื ื"ืื" ืืื ืืฉืคืืข ืขื ืืชืืื ืืช?", "ืืฉื ืฆื ืืืืืืื, ืื ืืขืจื ืฉื ืืืืืจืืืจ?"
ืืื ืืชื ืืืฉื ืืขืฆืื. ืขื ืืืื, ืชืืื ืืืชืื ืงืื ืืื ืกืืช ืืืืื ืชืื ืืื ืชื ืืขื.
ืขื ืืืืืจ
ืื ืืจืื ืืจืืื ืืื ืืชืื ืช ื ืืื ืขื ืขื ืืื ืืืืืืช, ืกืืืจืืืคืื ืืืืง ืืืืข. ืืชื ืืืื ืืคื ืืช ืืืื
ืชืจืืื: ืืืื ื ืฉืจืืืืื
ืืงืืจ: www.habr.com