ある辞書が与えられていて、その辞書の中の単語でしりとりをする時、 しりとりの単語数が一番長くなる時の長さは??? という、おもしろい問題あったので、解いてみた。 もちろん「ん」で終わるので、逆から考えるのもアリやとは思うけど、 何で始めようと、最初に「i→あ」の単語で始めたと考えると、1ステップで すべて「あ」スタートの問題に還元できるので、「あ」スタートとして考える。 まず辞書のすべての単語を単語の最初と最後の文字で分類して、それぞれその分類に含まれる数を数える。 例えば「あ」で始まって「い」で終わる単語は「あ」→「い」と表し、これを「あ」から「い」への遷移と呼ぶ。 これを縦軸と横軸に「あ〜ん」をとる表(配列)として考える。 アルゴリズムの流れとしては、 「あ」から始まって、遷移先を「あ」から順に探していって、単語が存在する遷移を探す。 もしその遷移先が見つかっても、さらにその先他の文字
新年に「今年はもっと○○」するぞ、「今年は毎日○○する」と決めていた人も多いと思います。しかしそうした新年の決心は、仕事のない年末年始の休みに考えたことだったので、いざ仕事が始まって忙しくなると、まるで深夜に書いたラブレターと同じように色あせてくるもののようです。 最近、The Power of Less: という著書を出版した Zen Habits の Leo は、ここ最近のアドバイスのなかで**「大きな決心」よりも「毎日の習慣」をゆっくりと変える**ことで、むしろ少ない労力で大きな変化を作れるということを繰り返し指摘しています。 ここ最近の Leo の tips から、新年の抱負に関係したアドバイスを5つ選んで意訳してみました。 大きな「新年の抱負」を立てて無理をするよりも、ゆっくりと新しい習慣を作る方がいい。その方が長期的な効果がある。 今年に達成したいゴールを一つだけ考えます。その
間違えてコミットしてしまったファイルを、前のバージョンに戻したい。いくつ前のバージョンに戻したらいいかわからない。という時に。 作業手順 ファイルの中身を確認 % git show HEAD^:path/to/file や % git show HEAD^^:path/to/file をして、以前のバージョンのファイルの中身を覗く。 特定のバージョンにファイルを戻す バージョンがわかったら戻す。 % git checkout HEAD^ path/to/file すると以前のバージョンの内容に戻ってる。 使用例 どんな場合に使うか(使ったか) 今回↓のような状態で使った。 % cat index.html ここは○○のホームページです // 普段の内容 % vi index.html あけましておめでとうございます。ここは○○のホームページです // 年始用 % git commit -
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く