トップページ⇒tech
359コメント147KB

プログラマーに挑戦!IQ問題

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
まったく同じ見た目のコインが12枚あります。
そのうちの1枚だけ他の11枚と重さが違います。
天秤を3回だけ使って、その重さが違うコインを
捜し当ててください。
0309でふぉの名無しNGNG
>>302
1^9+9^1=10

他にないかなー
0310デフォルトの名無しさんNGNG
>>302
(1+1/9)*9=10

では、3478 は?
0311302NGNG
302の問題は310が正解です、はい
0312デフォルトの名無しさんNGNG
>>31
305は?
0313デフォルトの名無しさんNGNG
>>302
9+√9−1−1=10
0314デフォルトの名無しさんNGNG
>311 おーい! 310 はカッコ使ってるじゃないか!

+、-、*、/ だけって規則じゃないのか?


それから / が c言語の定義なら

1+9+1/9 も10だぞ!
0315デフォルトの名無しさんNGNG
1の問題が13枚でも可能っていうのはどうなった?
やっぱ無理か?

問題
三枚の封筒が置いてあります。
このうち一つには一万円札が入っていて、残りは空です。
A君はどれが一万円入りの封筒か知っています。
しかし、B君は知りません。

B君はこの中から封筒を一つ選びました。
ここで、A君はB君が選んでいない封筒で空の封筒を一つ破り捨てて、
B君にもう一度選びなおす権利を与えました。

残った封筒は二つありますが、B君が一万円入りの封筒を手にするには
どちらを選ぶのが得策でしょう。

ながくてごめん。。
0316315NGNG
>>1の問題って、18枚まで3回で解けそうな雰囲気。
0317デフォルトの名無しさんNGNG
■>>1何枚までいけるかの回答

1.1回の計測で得られる情報量
 天秤の状態 = 「―」「/」「\」の3通り
    ↓
 1/3 log(2)3 + 1/3 log(2)3 + 1/3 log(2)3 = 1.585 [bits]

2.3回の計測で得られる情報量
 1.×3 = 4.755 [bits]

3.12枚のコイン
 1枚のコインの状態 = 「重さが違う」「違わない」の2通り
    ↓
 これが12枚なので
   2通り×12 = 24 [通り]
    ↓
 見分けるのに必要な情報量は
   log(2)24 = 4.585 [bits]

4.13, 14枚のコイン
 同様に
   log(2)26 = 4.700 [bits]
   log(2)28 = 4.807 [bits]

5.結果
 12,13 枚のときは
   4.755 > 4.585, 4.755 > 4.700
 なので3回の計測で見分けがつく。

 14枚のときは
   4.755 < 4.807
 なので3回の計測では見分けられない。

以上 
0318315NGNG
> 3.12枚のコイン
>  1枚のコインの状態 = 「重さが違う」「違わない」の2通り
>     ↓
>  これが12枚なので
>    2通り×12 = 24 [通り]

?
0319デフォルトの名無しさんNGNG
コインAB…がある。

コインAの重さは普通? → はい、いいえ (2通り)
コインBの重さは普通? → はい、いいえ (2通り)
 …

って感じで枚数分 数えたときの通り数ね。
0320デフォルトの名無しさんNGNG
13麻衣の怪盗も出てたと思うが
0321292NGNG
>292
の答えです。答えは

1 2 3 4 5 6 7 8 9 A B C の う た
0322デフォルトの名無しさんNGNG
>>315
>>41を読め。
ていうか不純コイン問題出てくるの何回目だ…
0323  NGNG
>>315
その問題は、選び直さない方がいいという事でいいのかな。
B君が1万円を選んでいないなら、A君が選び直す権利を与えるメリットがないから。

>>317
細かいようだけど、それだと「証明」にはなってない。
回答するうえで、必ずしも重いか軽いか言い当てる必要はないので、
たまたま上手くいって、14枚以上の場合でもわかる可能性はあるかもしれない
0324>>323NGNG
>回答するうえで、必ずしも重いか軽いか言い当てる必要はないので、
>>317はそれを踏まえた上での計算でしょうが。

>たまたま上手くいって、14枚以上の場合でもわかる可能性はあるかもしれない
ないよ。
0325デフォルトの名無しさんNGNG
>>315
B君が手に持っていなかった方を選ぶのが得!
どうよ?
0326315NGNG
>>319
12枚について、Yes/Noでカウントしてったら、 2 ** 12 にならんですか。
今思ったんだけど、この場合は、不純なコインがどれかで12通り。
さらに、重いか、軽いかで * 2 って計算するんではないかと。

>>322
すまぬ。過去ログを ">>1" で検索して引っかかんなかったから、
まだないのかと。。。
でも自力でも解けたよ〜。 >>41 とは違うやり方だったけど。

ちなみに、n回で不純コインを見つけだすことができる最大枚数は、
(3^n -1)/2 だ。多分ね。

>>323
そういう問題じゃないっすよ。(^-^;
封筒は二枚だけど、確率は50% 50%になってないのですよ。
0327デフォルトの名無しさんNGNG
>>325
ちゃんと理由も添えてお答えいただくと嬉しげ。

つーことで、天気もいいし、出かけてきます。
0328319NGNG
>>326
なるほど、そうかもね!
ちゃんと考えてなかったから(w
0329325NGNG
>>327
1) 1万円の入っていない封筒を選ぶ(確率2/3)→空が破かれる→持っていなかったほうに1万円がある。
2) 1万円の入った封筒を選ぶ(確率1/3)→空が破かれる→持っていたほうに1万円がある。

1)が得。
0330デフォルトの名無しさんNGNG
封筒の問題ってどっちを選んでも変わらないが正解?
0331323NGNG
>>324
いやさ、>>317って、実は何をいいたいのかよくわからなくて。

>1枚のコインの状態 = 「重さが違う」「違わない」の2通り
>    ↓
>これが12枚なので
> 2通り×12 = 24 [通り]

何故ここで、掛け算してるのかがわからない。
上の文から、直で下にいくなら、2^12通りと考えないとおかしいよね。
だから、勝手に>>326のように解釈して、それで>>323みたいな事を書いたんだけど。
言いたいのは、目安にはなるけど証明にはなってないよ、という事ね。
logを使わないで、3通りが3回で3^3=27通り。で、13*2=26だから可能で、14*2=28
だから不可能って書いた方がわかりやすかったのでは。
0332315NGNG
** 封筒問題の答え **
>>329参照(ぉ

直感的にはどっちでも確率が等しそうな感じもするんだけど、
Aが選択的な行動をしているので確率が変動。

ついでにもう3問。

1.
1/2! + 2/3! + 3/4! + ... + (n-1)/n!

2.
1*1! + 2*2! + 3*3! + ... + n*n!

3.
2/(1*2*3) + 4/(2*3*4) + 6/(3*4*5) + ... + 2n/n(n+1)(n+2)

を求めよ。(3は高校で習うと思われる。)

上のだとすぐに答えが出てしまいそうなんで、もう一問。
9/x + 24/y = 1
を満たす整数の組(x, y)は何組?

今日は9/24なので、9と24を使ってみた。
0333 NGNG
>>332
1. 1 - 1/n!
2. (n+1)! - 1
3. n / (n+2)
最後は24組?(しっかり考えてないから自信なし)
0334デフォルトの名無しさんNGNG
>>333
最初の3つは正解。(あっさり解かれたか〜^^;)

でも最後のは違うです。
もっと多いはず。
0335 NGNG
>>334
あれ、と思って考え直してみたけどやっぱり24組になってしまいました。
下に考え方書いてみるんで、間違ったところあったら指摘もらえると。

9/x + 24/y をどちらも約分し。
a / b + c / dとなったとする(どちらも既約分数)、これが1になるには
a + c = b = d
という条件を満たさないといけないはず。
ここで、aは9の約数、cは24の約数となるが、このとき、a,cが定まると
b,dは一意に定まるので、x,yも一意に定まる。
つまり、(a,c)の取りうる組み合わせの数だけ、(x,y)の組み合わせの数があるといえます。9 = 3^2より9の約数は3種類。24 = 3 * 2 ^ 3 より24の約数は2 * 4 = 8種類。
よって、(a,c)の組は3*8=24通り。よって、24組。
0336315NGNG
>>335
x, yがマイナスのときが含まれてないのかな。。
0337デフォルトの名無しさんNGNG
>>335
負数もありうるんじゃない?
0338 NGNG
>>336
あ、すいません。つい自然数のつもりで解いてました(汗)

となると・・・72組?
0339338NGNG
>>338
じゃない・・・・70組かな・・・何かこれでも間違ってそう・・
0340338NGNG
>>339
ダメだ、自分。逝ってヨシ
46組でファイナルアンサーで(汗)
0341デフォルトの名無しさんNGNG
う〜。もっと少ないはず〜。
0342315NGNG
F(n)をnを二進数表記したときの1の個数だとする。例えばF(3) = 2。
このとき、
∞
Σ F(n)/n(n+1)
n=1
を求めよ。

とりあえず、数列が絶対収束するってことは仮定しちゃっていいです。
つまり、数列の順番並べ替えてもいいってことね。
0343315NGNG
9/x + 24/y = 1 の答え書いてもいい?
0344338NGNG
>>343
あー、あっしはギブアップです。
0345デフォルトの名無しさんNGNG
ほいじゃ。

9/x + 24/y = 1 (当然 xy != 0)
両辺に xy をかけると、
9y + 24x = xy
xy - 24x - 9y = 0
xy - 24x - 9y + 9 * 24 = 9 * 24
(x-9)(y-24) = 2^3 * 3^3
x-9, y-24 は右辺の約数。片っぽを決めればもう片一方も決まるので、
その取りうる組は 32組。

ここで、xy=0 となる組を除去して31組が正解。
0346315NGNG
なんか、IQ問題って言うより、そのまま数学の問題のような。
もっとパズル的な問題考えてきます〜。
0347デフォルトの名無しさんNGNG
醤油の入った10リットルの桶と
水の入った10リットルの桶があります。
200ミリリットルすくえる柄杓で醤油の桶から一杯すくって水の桶に入れました。
十分撹拌した後で、水の桶から一杯すくって醤油の桶に混ぜました。

水桶の中の醤油と、醤油桶の中の水では、
どちらが多いでしょう。
0348デフォルトの名無しさんNGNG
同じ。違ってたら大変なこっちゃ
0349デフォルトの名無しさんNGNG
(x-a)(x-b)(x-c)....(x-z) を整理しなさい。
とかいう問題はどう?
0350デフォルトの名無しさんNGNG
>>349
(x-x) があるから 0 とか?
0351unknownNGNG
(x-x)=0
so, whole thing is equal to zero.
0352デフォルトの名無しさんNGNG
パズルっぽい問題を考えるのが一番IQいるかもね・・・
0353デフォルトの名無しさんNGNG
ム板っぽいやつを。

VBでSendkeysするときの前処理。
Sendkeysでは、{と}は特殊な意味を持っているので、それぞれ
{{} と {}} に置換しないといけません。
3回の置換で残らず置換するにはどうしたらいいでしょう。
0354デフォルトの名無しさんNGNG
>>353
} → {}
{ → {{}
{{}} → {}}
ならだいじょうぶかな・・多分
0355デフォルトの名無しさんNGNG
>>1
14枚の場合は、ほかに1枚「普通の重さ」とわかっている
コインがあれば、天秤3回でいけますね。


期待値が無限大になる話題がよく出てますが、次の単純な
賭け(20年程前に何かの雑誌で見た)では、有利不利を
どう判定したらいいんでしょうか。

1)親が子からX円の場代を受け取る。
2)子がコインを投げる。
3)裏が出たら払い戻し1円で終了。表が出たらもう一回投げる。
4)裏が出たら払い戻し2円で終了。表が出たらもう一回投げる。
5)裏が出たら払い戻し4円で終了。表が出たらもう一回投げる。
6)以下同様に裏が出るまで投げ続け、
  裏が出たら2^(投げた回数)円の払い戻しで終了。

Xがいくらでも、子の期待値は無限大になるんですが、
X=1万円出してこの賭けをする人はいないですよね。
0356デフォルトの名無しさんNGNG
>>355
 親が何兆円も払えるわけないから、実質、払い戻し金は頭打ちになる。
という言い方もできますが、実際には、100兆もらうのと、1000兆
もらうのは大した差はない、というのが一番大きいのでしょう。
 100兆持ってる段階での2万円の価値と、100万しか持っていない
ときの2万円の価値って違いますよね。保険なんかも同じ話で、期待値考
えれば損している。でも保険入らないのが得といえないわけで。
 数学的に損・得を判断しろと言われたら、損・得は人それぞれ違うわけ
でして、x円貰うことがどれくらい嬉しいのかという、f(x)という評価関
数を用意しないといけないでしょう。で一万円払うのがどれくらい悲しい
か、というのも数値で評価して。で、その評価値の期待値を求めて損・得
を判断する、というのが正しいのかな。
0357デフォルトの名無しさんNGNG
期待値が1万円を越える為には 1/2 + 2/4+ 4/8+ ・・・ 2^n/2^(n+1) n>2万だから

10000・・・・6千個・・・・0 円が支払われるならって事だからね
0358数学は苦手NGNG
1回につき子がかける金額をxとした場合、1回あたりの勝率は、
 1/2^x
従ってY(所持金/x)回チャレンジした場合、子の勝率は
 Y/2^x
ここで所持金をXとすると、
 (X/x)/2^x
後は↑が1/2以上か以下かを判定すれば…?
0359355NGNG
>>357
どもども。わかりやすいです。

期待値が10円になるには、(1/2) * 20 = 10 円だから
確かに 2^20 = 約100万円 も親の資金が必要になりますね。

しかし、掛け金が10円なら親の資金が1000円くらいでも
何回か勝負していいかな、という気になるけど。
実質的には、親の資金より子の資金(つまり勝負の回数)が
有限なのが問題なのかな。

>>358 さんは、その辺のことを言ってるのかもしれないけど、
よく意味がわかりませんでした。スミマセン。
■ このスレッドは過去ログ倉庫に格納されています