1read 100read
2011年10月1期プログラム【論理パズル】intelが天才を求めているようです TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
全国高専プログラミングコンテスト part3
今もっとも最新のプログラム言語は?
自動キー入力ソフトを作りたいのですが・・・・。
Boost C++ Libraries Sandbox


【論理パズル】intelが天才を求めているようです


1 :09/10/07 〜 最終レス :11/11/20
ある所に、6人の男女がいた。
その6人の男女は金がなくて困っている。
そこに、ある一人の裕福な男がやってきた。
その男は6人の男女が金に困ってると聞いて、
彼らにある問題を出した。
「まず6人のうち5人に10から1までの番号を付ける(番号は重なってもいい)。
5人は他人の番号は分かるが、自分の番号は分からない。
残りの1人は5人の番号をすべて見ることができる。
そして、残りの1人に青色のチケットと赤色のチケットを渡して、
どっちか1枚を5人のうちの誰かに渡す。
5人はだれに何色のカードが渡ったのか分かる。
そして5人は自分の番号を当てる。
さあ、君たちにできるかな、できたら思う存分の金をあげよう。」
5人は確実に自分の番号を当てることができるであろうか。
確実にできないとすればどのくらいの確率で当てることができるであろうか。
(6人は会話、アイコンタクト、モールス信号などの行為で番号を伝えあうことはできません)

2 :
事前に打ち合わせは出来るの? チケットについてとか

3 :
できるだろうなそりゃ

4 :
本当にお金がもらえるかどうかは問題じゃないのね。

5 :
>>2
否… 番号を知るには ticket は関係ない様です
6人の中の1人が5人 全ての番号を知る事が出来る事も関係が無い
5人が二つずつ番号を受ける事に為り5人が他人の番号が分かるので在れば
ticket の意味は分からなくても 100% 番号を答えられる筈…
5人は他人の番号を見て残りの自分の二つの番号を答えるだけです
ticket に意味が在るとすれば 男女の区別ですか…

6 :
>>5
日本語でおk

7 :
>確実にできないとすればどのくらいの確率で当てることができるであろうか。
これが少し悩ましいなぁ。

8 :
>>5
お前問題の意味勘違いしてない?

9 :
確実にできないのはハッキリしてる。
組み合わせ最小になるのは最も小さい番号が6以上ならば最も小さい番号の人に青を
最も大きい番号が5以下ならば最も大きい番号の人に赤を渡す場合だろうけど
確率計算が面倒くさいからやめた。

10 :
全員に1-10まで割り当てりゃいい

11 :
>>8
はて…
仮に 6人に番号を付けるので在れば 確率の計算も入ると考えられます
6人中 2人の番号が ひとつに成るからです
そうなると ticket も多少なり確率を変化させる物と為るのですが…
例えば 色で番号の大きさを区別して順番を付ける など

12 :
ちなみに誤り訂正符合の話であって別にIntelが作った論理パズルではない

13 :
>>11 plus
以外と疑問に為って居るのですね…
この場合だと 全員の番号を見れる者の番号は他の5人に知られては成らない筈です

14 :
>>13
他の4人でしょ。問題読め。

15 :
>>14
否… 問題に対しては >>5 です
>>11 の状態で在れば >>13 の条件が付くと云う意味です

16 :
>>11
問題読めよ

17 :
だ か ら
問題をちゃんと読め

18 :
>>16
他の番号が分かって自分の ふたつの番号を当てる確率を… どうぞ
ticket も関係しているらしいです

19 :
これは全員加算した値の下一桁をパリティーとすればいい
2 5 ? 9 4 : 7
という数値をみて?がどの位置にあっても?が何であるかわかるということ
右から2番目の人に青を渡したらパリティー2赤の時は+5して7のように決めておけばいい
要は誤り訂正の問題だと気付くのにどれだけ時間がかかるかみるための問題でしょう

20 :
>>19
5人の順番に対して残る1人の ticket を渡す乱数ですか?
>決めておけばいい
(6人は会話、アイコンタクト、モールス信号などの行為で番号を伝えあうことはできません)
微妙です

21 :
予め相談するのが無効なわけないだろ。
いきなり紙渡されてもわけわからないだろw。

22 :
この本の最初の問題じゃなかったっけ。
『プログラマのための論理パズル 難題を突破する論理思考トレーニング』
http://www.amazon.co.jp/dp/4274067556

23 :
>>21
そうです 使用の用途が書いて無いのです

24 :
チェックサム

25 :
>>20 plus
ですが 番号に対してです…
>>19
ticket に割当を行うので在れば [-2, -1, 0, +1, +2] の方が良い気がします
ですが ticket を渡す乱数と云うのは外せないと思いますが…

26 :
このスレッドは天才pンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
                  京都大学霊長類研究所

27 :
天才()笑い

28 :
>>25 plus (ticket の割当を決める)
え…と この定義を導入すると ticket を渡された者が言い当てられるか? に…
例えば 青であれば 偶数 赤であれば 奇数 つまり ふたつの番号の 奇数 偶数 が同じ場合に 赤か 青が渡される?
5人で同じ順番方向に番号を付ければ 奇数 偶数 が同じに成る確率は無いと考えられます…
仮に折り返しで番号の順序を割り当てる場合は両方を持つので渡された 奇数 か 偶数 を答える
ticket に対しての割当は この様な処でしょうか?
この場合で渡された ticket の色の 奇数 偶数 が分からない状態で答えるので在れば
計算が間違えて無ければ 恐らく 18% の確率で当たる と思います

29 :
こういうのって
なんであり得ない例えを使って
問題を解りにくくするんだろう?

30 :
>>29
分かり難いですか?
他の人の番号が分かる時点で自分の ふたつの番号は分かって仕舞います
確率を導きだす問題までには成っていないと思われます
>>28 訂正
    >5人で同じ順番方向に番号を付ければ 奇数 偶数 が同じに成る つまり確率は無いと考えられます…
    >この場合で渡された ticket の色の 奇数 偶数 が分からない状態で答えるので成らないのなら
    >恐らく 計算が間違えて無ければ 18% の確率で当たる と思います

31 :
自分のふたつって何よ?

32 :
>>29
無駄な情報を捨象する能力を求めているようだ

33 :
あと、色のカードはどっちか一枚だけを誰か一人だけに渡すと書いてあるようだが

34 :
そもそも問題を理解出来ないんだから意味がない。
問題読めって何回言わせんだ

35 :
最近の若いもんはチェックサムも知らんのかω

36 :
>6人は会話、アイコンタクト、モールス信号などの行為で番号を伝えあうことはできません
あいまいな問題だな。
抜け道はいくらでもありそう。

37 :
話しちゃいけないのは番号であって、
大きいか小さいか等しいかなどは話してかまわないのです。

38 :
カードはいらんね。

39 :
Sorry, multi.
>>31
( >>1 問題 )
>5人に10から1までの番号を付ける
番号は1人に対し ふたつに為ると云う説明が必要だった様ですね
>>33
( >>1 問題 )
>どっちか1枚を5人のうちの誰かに渡す
>仮に折り返しで番号の順序を割り当てる場合は両方を持つので渡された 奇数 か 偶数 を答える
>この場合で渡された ticket の色の 奇数 偶数 が分からない状態で答えるので在れば
つまり 番号を答えるのに確率を含みます
>>35
この問題に対しての source を書けと云う事ですか?

40 :
>>22
問題の意味を理解するだけで一苦労だ
この本難しいな

41 :
カードを配る際に、番号を書いてあげればいいんじゃないかな?

42 :
こうゆう問題は抜け道を考えてしまうからなぁw
コンピュータの中で人が情報運んでるわけじゃないから、すげー曖昧さが

43 :
>番号は1人に対し ふたつに為ると云う説明が必要だった様ですね


44 :
どこにそんなこと書いてあんだよw

45 :
( >>1 問題 )
>まず6人のうち5人に10から1までの番号を付ける(番号は重なってもいい)
>>44
5人に 10 から 1 まで番号を付けると5人は番号を幾つ持つ事に為るでしょうか?

46 :
>>45
重複有りだから無限につけられるよ

47 :
>>39
完全基地外かよwww

48 :
> 5人は確実に自分の番号を当てることができるであろうか。
無理。
> 確実にできないとすればどのくらいの確率で当てることができるであろうか。
1/10

49 :
>>40
中途半端に人に例えて説明すると
全員グルだった場合は?とか
誰かが裏切った場合は?というような
余計なことを考えないといけないからな。

50 :
>>19 できっちり解説されているのになぜうだうだやってるんだろう?

51 :
>>50
パズルと現実を混同している人が、現実ならああだこうだと文句を言っているから

52 :
>>19
決めておけばいいって言われても、
> (6人は会話、アイコンタクト、モールス信号などの行為で番号を伝えあうことはできません)
っていう条件でどうやってそういう取り決めをするのかという問題が。

53 :
結論
問題に不備があるので回答不能

54 :
回答する人間は現実の人間だから
問題が訂正されるより先になぜか解き終わっている、ずる賢い人間もいるよ

55 :
>>50
パリティは間違いだが

56 :
>>47
>完全基地外かよwww
自分でも そう思います…
>>50
>19 できっちり解説されているのになぜうだうだやってるんだろう?
これですか? 確率を答えるのに定義されて無い 赤/青 を答える必要性があると思いますか?
>これは全員加算した値の下一桁をパリティーとすればいい
>2 5 ? 9 4 : 7
>という数値をみて?がどの位置にあっても?が何であるかわかるということ
>右から2番目の人に青を渡したらパリティー2赤の時は+5して7のように決めておけばいい
>要は誤り訂正の問題だと気付くのにどれだけ時間がかかるかみるための問題でしょう
結局 【問題】確率を算出する定義を考えなさい だと思えます…
合理的に定義すれば 1/17 の確率 ですか…

57 :
>>56
確率は1だよ

58 :
>>57
何故です

59 :
<カードを渡す人>
カードの渡し方は、5人のうちの誰か×赤青のどちらかで10通り。
5人の数値の合計の下1桁(10で割った余り)に応じて、10通りのどれにするかを決めておけばよい。
<答える人>
自分以外の4人の数の合計と渡されたカードによって決まる数から、
自分の番号が計算できる。

60 :
>>59
番号は重なってもいい と為って居る事が理由ですが?
5/10 で番号が割り当てられては無いと思うのです…
つまり 番号は 一つでは無いと言う意味ですが
因みに始めに私が答えたのは >>5 です
やはり 【問題】確率を算出する定義を考えなさい では…
>まず6人のうち5人に10から1までの番号を付ける(番号は重なってもいい)
>5人は他人の番号は分かるが、自分の番号は分からない。
>残りの1人は5人の番号をすべて見ることができる。
>そして、残りの1人に青色のチケットと赤色のチケットを渡して、
>どっちか1枚を5人のうちの誰かに渡す

61 :
番号が重なっていいってわざわざ書いてんだから、
番号2つずつなわけないだろ。
そもそもそれじゃ問題にならないって分かってんのに
何で問題の意味をわざわざ変えてウダウダ言ってんの?

62 :
>>59
目から鱗

63 :
ああ、問題にならないってのは重複なしで2つずつとかの話な。
重なっていいって書いてる時点で2つずつなんて前提と捉える理由はなくなる。

64 :
>>19>>59 って同じ?

65 :
>>64
別人だけど、言いたいことは同じ。
パリティじゃなくて、チェックディジットって言う方が正確かも。

66 :
コンピュータ用語でのパリティは別の意味を持つから>>19は他分野が専門なんだろうな

67 :
>>63
と 為るとこの様な感じですか?
S = (1,2,3,4,5,6,7,8,9,10), E = 2^S, P({k}) = 1/5(k=S)

68 :
>>67 plus
ticket が入るとこの様な感じでしょうか?
S = (1,2,3,4,5,6,7,8,9,10), E = 2^S, P({k(1/2)}) = 1/5(k=1/2, k=S)

69 :
P=1

70 :
番号が重なって良いのであれば1と2で番号をつけて
色で1と2で分けたらダメなの?

71 :
>>26
これが正解だな

72 :
では、具体例で行きます。
@ABCDEと6人に番号を振ります。
E番の人がチケット係
例、割り振られた番号、@−1、A−2、B−3、C−4、D−5とします。
開始、
チケットを配ります。Aへ青、Bへ青、Cへ青、Dへ赤
@番の人は、1と解りました。
チケットを配ります。@へ青、Bへ青、Cへ赤、Dへ青
A番の人は、2と解りました。
チケットを配ります。@へ青、Aへ青、Cへ赤、Dへ赤
B番の人は、3と解りました。
チケットを配ります。@へ青、Aへ赤、Bへ青、Dへ青
C番の人は、4と解りました。
チケットを配ります。@へ青、Aへ赤、Bへ青、Cへ赤
D番の人は、5と解りました。
5人全員、自分の番号を無事知ることができました。

73 :
なるほど。

74 :
受け取った人が意味を理解していないと、結局は間違った数を答えるだけ。

75 :
どんだけチケットあるんだよ

76 :
チケットは赤と青の2枚だけやろ・・・
>そして、残りの1人に青色のチケットと赤色のチケットを渡して、
>どっちか1枚を5人のうちの誰かに渡す。

77 :
赤と青が一枚ずつとは書いてないな。

78 :
>まず6人のうち5人に10から1までの番号を付ける(番号は重なってもいい)。
文意がさっぱりわからない。
番号が重なるとはどういう意味か?
一人に複数の番号をつけてもいいと言う意味か、あるいは
一つの番号が複数の人についていてもいいと言う意味か、
もしくはその両方がありなのか。
また、6人目が作為的に番号をつけても問題の条件に抵触しないと言えるがそれは良いのか
(何通りかに絞れるが確定できない条件にしておいて、チケットを渡した相手により一つに定まる、など)
>カード
途中でいきなり出てくるこの「カード」とは赤ないし青の「チケット」のことか
チケットを渡すのは一回のみか、回収して何回も渡しても良いのか。
そもそも事前の相談はどこまでアリなのか。

79 :
>>78
文意を知りたい、知る価値があると思ってるなら、
価値のない解釈は無視すればいいし、価値のある解釈が多すぎるならむしろ喜ぶべきだ

80 :
「事前の相談はどこまでアリなのか」に関しては無限に可能性がある。
そんなものを虱潰しにするほど暇ではない。
「価値がある解釈」か否かも一瞬でわかるわけではないと言うことを知るべし。

81 :
5人の数値の合計を示せればいいのです。5人の数値の合計は、以下のどれかです。
15、16、17、18、19、20、21、22、23、24、25、26、27、28、29、30、31、32、33、34、35、36、37、38、39、40
ところで、赤青の札で示せる情報は
1,2,3,4,5,6,7,8,9,10
だから、三分の一の確率

82 :
ふとんがふっとんだ

83 :
>>81
完全アホだな。

84 :
まだこのスレあったのか

85 :
>>84
この板でそんなに簡単にはスレ落ちしないよ

86 :
青色、赤色を5人に渡すことによって表せる数値は2進数の5桁、
つまり、0〜31迄の数を表せる。これによって表す数値をAとする。
5人に割り振られる数値の合計をAで表すと事前に決めておけば、
各自はAから自分以外の皆の数の合計を引くことにより自分の数を知ることが出来る。
つまり、自分の数=A−自分以外の皆の数の合計
ところで、5人に割り振られる数の合計は最大で50になるので、Aの取りうる数値の範囲を超える。
その場合を考慮し、やはり事前の取り決めで、合計値が31を超える場合には、
Aには合計値から32を引いた数を入れると約束しておく。
つまり、自分の数=A+32−自分以外の皆の数の合計
従って、自分の数を知りたいときには次の計算を実施する。
A−皆の数の合計が正の場合、自分の数=A−自分以外の皆の数の合計
A−皆の数の合計が負の場合、自分の数=A+32−自分以外の皆の数の合計
以上より、5人は確実に自分の番号を当てることが出来、思う存分の金を得ることが出来る。

87 :
訂正
A−自分以外の皆の数の合計が正の場合、自分の数=A−自分以外の皆の数の合計
A−自分以外の皆の数の合計が負の場合、自分の数=A+32−自分以外の皆の数の合計

88 :
>>86
問題が違ってる。
チケットを渡すのは5人ではなく1人。
0〜9までの10通りしか表せない。
5人に割り振られる数値の合計の下一桁を指し示すことにしておけば、
他の4人の合計の下一桁から自分の数が1〜10の中のどれかは解る。
5人の合計の下一桁をa、他の4人の合計の下一桁をbとすると
a = bなら10。
a > bなら a - b。
a < bなら 10 + a - b。

89 :
こんな解説はどうでしょう。
ABCDEの5人に渡された番号の合計sumは次のようになる。
A B C D E sum
1 + 1 + 1 + 1 + 1 = 5
1 + 1 + 1 + 1 + 2 = 6
1 + 1 + 1 + 1 + 3 = 7
1 + 1 + 1 + 1 + 4 = 8
1 + 1 + 1 + 1 + 5 = 9
1 + 1 + 1 + 1 + 6 = 10
1 + 1 + 1 + 1 + 7 = 11
1 + 1 + 1 + 1 + 8 = 12
1 + 1 + 1 + 1 + 9 = 13
1 + 1 + 1 + 1 + 10 = 14
1 + 1 + 1 + 2 + 1 = 6
1 + 1 + 1 + 2 + 2 = 7
1 + 1 + 1 + 2 + 3 = 8
・・・
Eには他4人の番号がわかっているのだから、sumから他4人の番号を引いた数字が自分の番号となる。
このとき、sumの十の位はEの番号に影響を与えていないので無視できる。
すなわち、ABCDEが自分の番号を知るには、他4人の番号と合計sumの一の位さえあればよい。
他4人の番号はすでにわかっている。
合計値の一の位はカードを渡す時に次のように決めておけばよい。
  A B C D E
青 0 1 2 3 4
赤 5 6 7 8 9

90 :
>>88,89うーん、なるほど違ってた、ちっくしょー

91 :
「カードの渡し方を元に、自分の番号を知る」ことができるようなルールづくりは可能でしょうか、って聞けよ。
カードを渡しました、自分の番号は何でしょうか、じゃ「わからん」としか言えん。

92 :
>>1がバカだってことは今更

93 :
5人をワッカに並べて、それぞれの人に対して、
その人と両隣の和が残りの和より小さい場合は赤。
でない場合は青という定義で配ればいいじゃね?
5分しか考えていないから検証していないが、
多分そうとう情報量を含んでいると思うぞ。

94 :
と思ったら 89 に正解が描いてあった。ちくしょう。

95 :
>>94
>>19 >>59 も参照。

96 :
こう・・・だな
残りの一人が5人の数字を知っているので この数字を全部足す これを SUMとする
5人のうち一人は、4人の数字を知っている この数字を全部足す これを SUM2とする
そして、SUM − SUM2 から自分に割り当てられた数字を導ける
数式にすると
残り一人の知っている SUM = A+B+C+D+E
5人のうちの一人Aが4つの数字を知っている SUM2 = B+C+D+E
つまり、SUM − SUM2 = (A+B+C+D+E)−(B+C+D+E) = A
同様にして全員求められる
>>89 の十の位は無視でき、1の位だけあればいいというのは、理解できない
カードもなくていい

97 :
>>96
>(6人は会話、アイコンタクト、モールス信号などの行為で番号を伝えあうことはできません)
この条件の下、SUMの値をどうやって他の5人に伝えるのかね?

98 :
>>97
うぐぅ
それは、答え「だけ」を伝えてはいけないと解釈してたよぅ
人間でなくていいやん

99 :
ABCDEの5人をこんな感じに分ける。
赤組(AB)、 藍組(CD)、 余り組(E)
まず赤組。
AとBの数字が二人とも5以下だったら、Aに赤い紙を渡す  CDEは適当に答えろ
AとBの数字が二人とも6以上だったら、Bに赤い紙を渡す 
Aが5以下、Bが6以上だったら、Aに青い紙を渡す
Aが6以上、Bが5以下だったら、Bに青い紙を渡す
次に藍組。
CとDが4以下だったら、Cに青い紙を渡す  ABEは適当に答えてろ
CとDが7以上だったら、Dに青い紙を渡す
Cが4以下、Dが7以上だったらCに赤い紙を渡す
Cが7以上、Dが4以下だったらDに赤い紙を渡す
最後に余り組。
全員が、5以下だったら赤い紙を渡す。
全員が、6以上だったら青い紙を渡す。
完璧だな

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
全国高専プログラミングコンテスト part3
今もっとも最新のプログラム言語は?
自動キー入力ソフトを作りたいのですが・・・・。
Boost C++ Libraries Sandbox