おお!次は中級者さん向けくらいの高速化とか面白いかなと思ってたらミケランジェロさんから出題が(^O^) 決まった正解のない問題ですね。初心者さん向けの問題に回答者として入っていくのは自重してますが、これなら回答者として参加しても問題ないかなと思いますので挑戦してみます。 特に制限等書かれてませんので、「結果を変えないこと」「今よりも速くすること」の二点だけという前提で考えます。 まず問題を見て、意図は「ループの中でやる必要のない処理は、ループの外に出す」という原則を伝えるための出題だと推察しました。 あとはもしかしたら、プチコンだとJの方のループはしなくても出来るよ、という点かなと思います。 多分初心者さん向けにはこの辺までだと思いますが、あとそもそもの作りも改善できるので、その辺も踏まえてなるべく実戦的に考えてみました。