タグ

開発と数独に関するmohnoのブックマーク (3)

  • 再帰関数を学ぶと、どんな世界が広がるか - Qiita

    0. はじめに 再帰関数は初めて学ぶときに壁になりがちで なんとなくわかった...けれど どんな場面で使えるのだろう...いい感じの例を探したい! という気持ちになりがちです。再帰関数は、なかなかその動きを直感的に想像することが難しいため、掴み所が無いと感じてしまいそうです。 そこで記事では 再帰関数の動きを追いまくることで、再帰関数自体に慣れる 再帰的なアルゴリズムの実例に多数触れることで、世界を大きく広げる! ことを目標とします。特に「再帰関数がどういうものかはわかったけど、使いどころがわからない」という方のモヤモヤ感を少しでも晴らすことができたら嬉しいです。なお記事では、ソースコード例に用いるプログラミング言語として C++ を用いておりますが、基的にはプログラミング言語に依存しない部分についての解説を行っています。 追記 1. 再帰関数とは 再帰の意味はとても広いです。自分自

    再帰関数を学ぶと、どんな世界が広がるか - Qiita
    mohno
    mohno 2019/04/06
    再帰は“楽”ができるけど“(実行)効率がいい”わけじゃないからなあ。“富豪的プログラミング”ならばどんどん使えってことになるんだろうけれど。
  • 難問数独専門 | The room of sudoku hard

    仮置き不要な難問数独を公開 スマホ用はこちら 問題は難しくても遊び方は簡単 仮置き(仮定法)なし。難問も必ず理詰めで解けるように作ってあります。解いて味のある、爽快感のある、手作り感のある問題を目指しています。 中級者向けとしてLevel5までの新作を毎日七問公開。Level6以上は一日二題の新作と、不定期の追加方式で公開しています。 難問数独専門なのですが、やや簡単レベルを毎日一題の新作と、入門編として初心者向けを毎日七題公開しています。 レベル別問題のlevel8は市販の超難問ナンプレ問題集の最後の方くらいの難しさ。level9は市販の問題集では作者はお目にかかったことのないくらいの難しさです。ぜひ挑戦してみてください。 正解できた場合名前を記録できますので、差し支えなかったら名無しのゴンべではなくハンドルネームを書いてくれるとうれしいです。 くれぐれも仮置きしないで挑戦のこと! 日替

    mohno
    mohno 2018/07/01
    「仮置き不要の良質な数独難問を作成するソフトをC++で開発し、できた数独難問を手持ちのタブレットで遊ぶためのソフトをAndroid Studioで開発しました」(http://www.danboko.net/profile.html より)
  • あらゆる数独パズルを解く

    Peter Norvig / 青木靖 訳 このエッセイでは、 あらゆる数独パズルを解くという問題に取り組む。制約伝播と探索という2つのアイデアを使うと、ごく簡単に解けるということがわかる(主要なアイデアはコードにして1ページたらずで、補足的なコードが2ページある)。 数独の記法と予備概念 最初に記法をいくつか決めておこう。数独パズルは81個のマス(square)からなる盤面を使う。数独ファンの多くはカラムを1-9で、行をA-Iでラベル付けしており、カラム、行、ボックスのような9個のマスの集まりをユニット(unit)と呼び、ユニットを共有するマスをピア(peer)と呼んでいる。パズルではマスのいくつかが空いており、他は数字が入っている。パズルの目的はこうだ。 それぞれのユニットのマスが1から9の数字の順列によって埋められるようにする。 つまり、1つのユニットに同じ数字が2度現れてはならず、そ

    mohno
    mohno 2011/08/30
    そりゃ解けるよ。問題作るプログラムと同時に走らせておけば、頭を使わずに数独が楽しめるね(←ボカッ)
  • 1