プログラミング挑戦日記、3週目
進捗は芳しくはないけど頑張ろう
過去の日記はこれ
知識0からプログラミングを始めた(AtCoder挑戦1週目) - 今日も独りで立ち話
知識0からプログラミングを始めた(AtCoder挑戦2週目) - 今日も独りで立ち話
1日目(1.12~A問題)
A問題は全部解けたんだけど、B - Minesweeperが全く解けなくて困っている
文字列を取得して、1列の場合はj-1とj+1に爆弾があればカウントを増やし、爆弾ならそのまま置換する感じで、それをループで縦に増やすイメージなんだけど、上下の列をどう保持するかわからんのよね
2行か3行ずつ取得して、下にスライドしていくイメージも考えたけど、出力の方法がわからないし、一つずつ出力をしていくのも考えたけど、どうしたらいいか大枠もわからん
これは難問だ…
2日目
マインスイーパが解けない
マジで無理
3日目
AtCoder Beginner Contest 173に参加した
A問題ではなんか変な勘違いをしていて、4回も提出してしまったが方針自体はまあ間違ってなかった
解答ではよりスマートなものが見れた
B問題は直近で解いたものに似ていたこともあり、すぐに解けた
いよいよC問題に挑戦してみたものの、全くわからなくて放心しているうちに終了
無事、コンテストデビューを決めたのだった
Ratingはコンテスト参加回数がしょぼいのもあって、まだまだだけどとりあえず1通りの知識を入れてしまうのと、発想力鍛えないとなーって感じ
4日目
B - Minesweeperがどうしても解けなかったので、諦めて解説や他の人のコードを見てもわからなかった
ということで、いったん置いておいてまた後日コードを見返してみようと思う
5日目(1.15まで)
とりあえず問題は後回しにして、必要な知識を入れてからまた戻ってくることにした
6日目
配列とか関数とかわかってるようでわかってないのをつきつけられるね
EX16 - 隣り合う同じ値を探す
を解いてて、bool型の存在を思い出したけど、真偽判定の使い方とかループの見つけ方とか難しいね
ループの探し方は具体的に規則を探して一般化するだけなので、大学入試の数列でやってた漸化式みたいなもんだけど、どういう形で一般化するのかというのが難しい
7日目
なし