暇人の寝室

技術系の記事や読書・アニメの感想などを投稿します。

Project Eulerを解き始めた
投稿者: ylafaro0310
2020.09.04

プログラミング

きっかけ

メモリのリソースを意識したプログラムを書けるようになりたい。競技プログラミングのような課題を解けば自ずと意識すると思う。そこでProject Eulerをとき始めようと思った。

どうやら25問達成する事にアチーブメントが貰えるとのことだ。何かの証明にまではならないとしても、目に見える形で達成感を得られるのが良い。

とりあえず1問目から順番に解いていった。プログラミングはできる方だと思っていたが、所々詰まる場面があった。少しショック。

使った手法など

25問解き終わるまでに使った計算を速くするための手法などは次の通り。

メモ化

繰り返しや再帰処理で同じ計算結果を使いまわせるようにメモをとっておく手法。簡単だが非常に計算速度が改善される。

数学の知識

所謂既に知られた数学の公式を用いると計算がシンプルに処理できるようになる場合がある。そのため数学の知識を持っていると有利だと思う。

アルゴリズム

当然プログラミングなのでアルゴリズムを知っていることは大きなアドバンテージとなる。

今のところはグラフ探索のような問題でダイクストラ法を使ったくらい。ある点から身近な点へのコストを計算する、というのを始点から順々にやる。

おわりに

趣味として楽しみながら新しいアルゴリズムを学ぶ動機が生まれるので、良い活動だなと思う。

問題数も本記事執筆時点で700問以上あるので、手に余るくらいだ。

コツコツと続けていけたらと思う。

カテゴリ:プログラミング

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA


プライバシーポリシー/ ©2020 暇人の寝室