codeiq

プログラミングを再開したので、勉強用にcodeiqをやっています。

codeiq.jp

ソースを書く問題は今のところJavaでやっていて、以下の問題を解きました。
★ITエンジニア本大賞コラボ問題★【言語不問】FizzBuzzで人気技術本をGETしよう! | CodeIQ
言語不問:プラマイゼロは何通り? | CodeIQ
言語不問:2進数で左右反転しても同じ? | CodeIQ
言語不問:ファイル名をわかりやすくソート | CodeIQ
言語不問:Excelなら簡単な集計 | CodeIQ
言語不問:【超絶技巧初級テク】ソースコード中のデータを限界まで詰め込もう | CodeIQ
言語不問:素数の数を数えてください | CodeIQ

コードを入れると実行してくれて、テストケース’(標準入力)に応じた出力を出して、正誤を判定してくれるというのがやりがいがある。

そして、処理に制限時間があるので、ブルートフォース的な力技をやろうとすると、桁数とかが大きくなった時にタイムアウトでアウト。
しっかりアルゴリズムを考えないとダメなのがきつい。

今取り組んでいるこれも、いろいろと手を尽くしたけどダメ。

codeiq.jp

・文字列に「7」が含まれている場合は1文字ずつチェックして、7の数をカウントする。
・文字列に「7」が含まれている場合は、7を置換して削除して、文字列の差分で7の数をカウントする。

どれもダメ、根本的に考え方を変えないとダメなのだが、いい手が思いつかない。
これで連休がつぶれた...

作りたいものがあるから、codeiqばかりやっていちゃダメなので、ほどほどにしないとな。