プロジェクトオイラーは、問題を文脈から外し、人々が問題を解決できるように問題を落とし込みます。プロジェクトオイラーはあなたに効果的に何も教えることができません。忘れてはいけないと思いますが、人気があれば何の意味もありません。プロジェクトオイラーでは、問題を解決するために知っておくべき断片(およびかなり高レベルの断片)しか含まれていないため、数学を学ぶことはできません。数学を学ぶということは、主題を考え、それについての本を読み、演習を解いたり、解決策を読んだりすることを意味します。それが数学を学ぶ方法です。あなたの読書を通してあなたがプロジェクトオイラーのものに近い何かを見つけることが起こった場合、あなたの運は幸運ですが、そうでなければプロジェクトオイラーは完全に時間の無駄です。数学の特定の分野を選び、それを研究するために時間を費やす方がはるかに良いと思います。理由を説明しましょう:私は3つの非常に高度なプロジェクトオイラーの問題を解決しましたが、それらはすべて、私がその一部を研究しているために偶然持っていた数論からの知識にアピールしていました。プロジェクト・オイラーから何も得られなかったと思います。たまたま、私はすでに数論を知っていて、問題を解決しました。
たとえば、数論が好きだとわかったら、H。Davenport-> Hardy&Wright-> Kenneth&Rosen'sを取り上げて、それらを調べてください。グラフ理論が好きな場合は、無料で入手できるReinhard Diestelの本を読んで、それを調べてください(または、books.google.comをチェックして、好みに合った方を見つけてください)。ただし、プロジェクトオイラーに問題があるという理由だけで、999999の方向に注意を向けないでください。動的プログラミングから高度な幾何学または高度な数論に至るまで、それは明らかに間違った方法であり、それはあなたをあなたの目標に近づけることはありません。
これは驚くほど退屈に聞こえます
ええと...あなたが自分が好きで解決策を見つけたいと思っている問題を見つけたとき、そしてあなたがコンピュータの画面の後ろにいない間にそれを熟考するのに十分な時間があるとき、数学は退屈ではありません。数学は主にペンと紙で行われます(はい、コンピューターを使用できますが、それは実際には重要ではありません)。
したがって、実際の問題、または高度な数学を知っていることで恩恵を受けるプログラミングの問題を見つけ、どの数学を勉強しなければならないかを知っている場合、その方法で学ぶことは動機付けになる可能性があります。
やる気がないと感じたら、きちんと勉強するのは難しいです。
あなたが学ぶと言うとき、あなたが実際に何を意味するのかという問題もあります。本の章の終わりで問題を解決した後、学習プロセスは停止しますか?さてあなたが決める。あなたはあなたがその主題を学び終えたと考えることができます、あるいはあなたはあなたが終わっていないと考えてそれについてもっと読むことができます。たった1つの方程式とそのバリエーションに関する本全体があります。
正式なトレーニングなしで学ぶことができるプログラミング関連の数学の量は限られていますが、それで十分です。しかし、多分あなたは自分自身を教えることができます。
それはすべてあなたのリソースとモチベーションに要約されます。
数学を知るには、プログラミングではなく数学を行う必要があります(プロジェクトオイラー)。