1209379680 パズルに挑戦

どのようにといたかを 教えてください。

★★★魔方陣パズル★★★

数字は 1から25まですべて使い 縦、横の合計が それぞれ65になればいいです。
斜めは 関係ありません。
空いてる箇所にいくつの数字が入るかをといて、そのときかたを 教えてください。
どのようにして といたのかが重要です。プログラムなどはナシです。

画像のほうを 参考にして 下のは 回答用に使ってください。
なお、回答の文字数が 足りなければ コメントを使ってもいいです。


┌─┬─┬─┬─┬─┐
│ │10│ │16│ │
├─┼─┼─┼─┼─┤
│17│ │ │ │18│
├─┼─┼─┼─┼─┤
│ │ │ 3│ │ │
├─┼─┼─┼─┼─┤
│25│ │ │ │ 2│
├─┼─┼─┼─┼─┤
│ │21│ │19│ │
└─┴─┴─┴─┴─┘

回答の条件
  • 1人5回まで
  • 登録:2008/04/28 19:48:02
  • 終了:2008/05/01 19:12:05

回答(1件)

id:ad2217 No.1

ネギ回答回数5ベストアンサー獲得回数02008/04/30 21:16:21

まず足し算の暗算の訓練をする。二桁の数字5個の足し算を瞬間に計算できるようにする。答えを書く必要はないので、訓練すればものすごく高速に計算できる。それから、あいているところに1から25までの数を入れて縦横をチェックする。このとき、重複しないように考えると考える時間が余分にかかるので、重複するかどうかは縦横が全部合ってからチェックする。遅いと思うかもしれないが人間の場合この方が速い。紙に書いたりすると時間がかかるので、もちろん全部頭の中でやる。この計算をしつつこの計算をすばやく出来るように訓練する。すると一瞬で縦横が全部合っているかどうかわかるようになる。重複のチェックは訓練してもあまり速くならないので、訓練はしない方がよい。

これでコンピュータを使わずに解ける。

id:taknt

回答拒否入りですな。

2008/04/30 22:27:15
  • id:taknt
    ┌─┬─┬─┬─┬─┐
    │a│10│b│16│c│
    ├─┼─┼─┼─┼─┤
    │17│d│e│f│18│
    ├─┼─┼─┼─┼─┤
    │g│h│ 3│i│j│
    ├─┼─┼─┼─┼─┤
    │25│k│l│m│ 2│
    ├─┼─┼─┼─┼─┤
    │n│21│o│19│p│
    └─┴─┴─┴─┴─┘

    空白の部分に アルファベットを入れました。
    これで 少しは 回答しやすいかな。
    なお、質問があれば、コメントでどうぞ。
  • id:desuyoker
    教えたら何ポイントくれるの?
  • id:taknt
    ポイントとその労力は 見合わないと思いますので、きちんとかけないなら やめといたほうがいいよ。

    ちなみに 内容によってポイントは 考慮しますので 今のところ、何ポイントとは 決めてません。
  • id:desuyoker
    労力って・・・w
    このレベルの問題なら10分もあれば解けるじゃん?
  • id:dblue
    数字は重複してもいいですか?
  • id:taknt
    1から25すべて 入れないとダメなので、重複はできないはずです。

    desuyokerさん、10分もあればとけるなら、すぐ回答できますね。
  • id:Mook
    インチキですがプログラムを作ってみました。
    (なのでコメントで失礼します。)

    即席なので、プログラムのバグということも多分にありますが、
    「解なし」ていうことはないですか。
  • id:blanketsky
    適当にプログラム組んで走らせたところ次の解を得ました。

    11_10_13_16_15
    17__6_23__1_18
    _7_24__3__9_22
    25__4_14_20__2
    _5_21_12_19__8

    解はこれ一つのみのようです。
    用いたアルゴリズムは a,b,d,f,g,k,m についての brute force です。
    a, b から c が決まり、d, f から e が決まり、k, m から l, h, i が決まり、g で残りが決まります。
    計算時間は一瞬でした。(が、手で計算するレベルじゃないと思います)
    総あたりする変数は6個以下に減らせるかもしれません。
  • id:taknt
    答えは わかってますが、それをどのようにしてといたら、導き出せるのかが
    問題なんですよねぇ。

    手で計算するレベルじゃないのかなぁ。
    難解なパズルとして成立する問題かどうかが 疑問なんです。
  • id:totsuan
    現在、手作業中です。
    私なりの途中経過を公表しますので、興味がある方でこれを利用して解きたい方はご自由にどうぞ。
    (ただし、殆ど虱潰し作業ですが)

    ①左端の列と一番下の列に注目しました。
    左端の列の合計は42で残り23、最下列は合計40で残り25。
    使える数値小さい順に1、4、・・・なので、左端に入れることができる数値は単純には最大18ですが、使える数字の中では15が最大。また、最下列の場合も同様に調べると、これらの2列に入れることができる数字は最大15まで、ということになります。
    ②左下隅の数字を仮に定める。
    1から順に入れていき、左端および最下列を満たす組み合わせを全て抜き出します。
    (現時点で58通りを確認してます。)
    ③最上列/右端の列の組み合わせを探す。
    現在、この段階です…

  • id:Mook
    あら、やっぱり解はありましたか。

    プログラムを見直してみます。
  • id:totsuan
    訂正;②は57通りです、たぶん。
  • id:taknt
    数式を作り、それから解を導き出せないかと思うのですが、やはり 無理なのかなぁ。
  • id:pyopyopyo
    空いている個所が10個なら、数式一発で解けるんですけどね。

    単純に考えると、
    a+10+b+16+c=65
    17+d+e+f+18=65
    :
    と、横方向で式が5個、
    縦方向に関して
    a+17+g+25+n=65
    :
    と式が5個で、合計10個式ができます。

    これを連立方程式と考えると、未知の変数がa〜pで16個、式の数が10個なので、解けません(解が一意に定まらない)

    そこで考えられる一つの方法は、残りの6変数(=16-10)で総当たりをして、解を探索する方法になると思います。組み合わせの数は 16C6 なので、手計算では無理ですが、プログラムなら一瞬ですね。

    別解としては、あと式を6個追加する方法が取れるかもしれません。ただ、私には式が6個も思いつかないです。a〜pの総和が??になることでまず一個、次に a〜pが 1から24までの整数値になることを使えば、と考えてあっさりあきらめました。
  • id:taknt
    変数が 9個で 式が4つなら 解けますか?

    たとえば こんなやつ

    a+b+c=?
    d+e+f=?
    g+h+i=?
    a+d+g=?
    (?は、いくつになるかわからぬ数値)

    この?を提示できれば それぞれの変数の値は 求められます?
  • id:taknt
    10分もあれば解けるなんて言ってた人がいたので、期待してたのですが、残念ながら
    音沙汰なしですね。

    なお、この質問に回答できるならば、コメントでお願いします。
    よいと思える内容ならポイント送信します。

    他の人には ちょっと無理なようなので、とりあえず キャンセルして ちょっと簡単なやつを
    出題しようと思います。
  • id:taknt
    http://q.hatena.ne.jp/1209637493

    こちらに質問しました。

この質問への反応(ブックマークコメント)

トラックバック

  • とりあえず魔方陣に挑戦してみた http://q.hatena.ne.jp/1209379680 ↑を見て、perlで魔方陣に挑戦してみた。 む、むずかしいじゃないか・・・ なんとか解けたがプログラムが長いし、時間がかかる
  • 数学の問題の問題4 数学の問題に関する話。今回は人力検索はてなの質問から。 パズルに挑戦 No.2 以下のパズルを解けた人、どのように解いたかを 教えてください。 ★★★魔方陣パズル
  • 魔方陣パズル  魔方陣パズルを先日ネットで見つけた速い順列生成アルゴリズムを使って解いてみました。(^_^; ●パズルに挑戦 ★★★魔方陣パズル★★★ +--+--+--+--+--+ | |10| |16| | +--+--+--+--+
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません