- 答えを見ずに考えて、5分考えて分からなかったら答えを見る
- 答えを見て理解したと思ったら、答えを隠して書く
- 筆が進まず5分迷ったら答えを見る
- 見ちゃったら一回全部消してやり直し 答えを送信して、正解になったら、まずは一段階目
- 次にコードを読みやすくするようにできるだけ整える これで動くコードになったら二段階目です。
- そしたらまた全部消す
- 今度は、時間を測りながら、もう一回、書く
- 書いてアクセプトされたら文字消してもう一回書く
- これを10分以内に一回もエラーを出さずに書ける状態になるまで続ける 3回続けてそれができたらその問題はひとまず丸
- 3ステップ目まで終わったタイミングで講師陣にレビューを依頼し、レビューを元にコードを書き直す
- LeetCodeの問題とは直接関係ないが、関連するライブラリの再実装などするのもよい。たとえば、@lru_cacheやheapqライブラリなどを使用した解法があったのでLRU Cacheの実装やBinary Heapの実装なども行う。
-
問題を解く前に問題名でブランチを切ります。
-
LeetCodeの問題ごとにフォルダを作成します。 フォルダ内は、step1.cpp、step2.cpp、step3.cpp とmemo.mdとなります。 memo.md内に各ステップで感じたことを追記します。(これはプルリクのメッセージでもよい) その他、最初に思い浮かんだコードなどもフォルダ内に保存してよいです。
-
プルリクエストのメッセージは以下のようにします。
- 問題へのリンク
- 問題文概要(プレミアムの場合)
- 次に解く問題の予告など