こういうのは、遅くても無駄が多くてもいいから、まずはバグのない正しく動くプログラムを書くことが超重要です。 そのためには素直でわかりやすい検証しやすいコードを書くこと。 正しい結果を得られるプログラムが完成したのなら、それは「リファレンス」として大事に取っておきます。 以後改良を加えるとき、改良後も正しいことを検証するには、リファレンスの出力と比較すればいいわけです。 最初から高度なことに挑戦すると、その出力が正しいことを検証するのがとても面倒になります。 なのでアプローチとしてはこれでokです!