X



トップページ数学
1002コメント417KB
分からない問題はここに書いてね448
■ このスレッドは過去ログ倉庫に格納されています
0193132人目の素数さん
垢版 |
2018/10/28(日) 20:19:07.22ID:WEdrppmC
数学とはなんでしょうか?
何が数学の本質なんでしょうか?
論理的な体系の構築? 定理の創出?
0194132人目の素数さん
垢版 |
2018/10/28(日) 20:30:37.13ID:x624ZJMX
>>161の若干の一般化とその導出を備忘録的に書いておきます。

>>60
まず、部屋を探る順番が一般の場合を考える。
部屋がNあり、その集合をRとする。A君、B君が探る順番を表わす全単射写像をそれぞれf,gとする:
f,g: R→{0,1,…,N-1} (順番は0から始まるとする。)
部屋自体の位置はなんら答えに影響しない。
σ=g・f^{-1} と置くと、σは{0,1,…,N-1}の置換。(・は写像の合成)
A君がi番目に探る部屋はB君がσ(i)番目に探る部屋ということ。
以下、「A君がi番目に探る部屋」のことを「部屋i」ということにする。

求めたいのは、「A君がB君よりも早く宝を見つける宝の配置の数」であるが、宝の数をcとすると、それは
 Σ[σ(i)>i] binomial(#{j| j>i, σ(j)>i}, c-1) (0≦i,j≦N-1、binomialは二項係数)
である。
なぜか?
「A君が初めて宝を見つける部屋(部屋iとする)」で場合分けしよう。
(つまり部屋0〜i-1には宝がなく、部屋iに宝がある場合)
部屋iはB君がσ(i)番目に探る部屋だからσ(i)>iでないと
少なくともB君はA君よりも前か同時に部屋iで宝を見つける
(B君はその前に別の部屋で宝を見つけることもある)ことになりA君は勝てない。
したがって、σ(i)>iが必要。
残りのc-1個の宝は部屋i+1〜N-1にあるが、宝がある部屋を部屋jとすると、
やはりσ(j)>iでないといけない。逆に全部の宝でそうであればA君が勝つ。
よって、残りのc-1個の宝が置かれてもいい部屋の数は#{j| j>i, σ(j)>i}だけあり、
全部そこに置かれる場合はbinomial(#{j| j>i, σ(j)>i}, c-1)通り。
したがって、上記のようになる。

続く
0195132人目の素数さん
垢版 |
2018/10/28(日) 20:31:26.72ID:x624ZJMX
>>194
続き

部屋が縦m、横nで、A君は横1行を探し終えたらすぐ下の1行に移り、
B君は縦1列を探し終えたらすぐ右の1列に移るという場合を考える。
つまり、m=4,n=3の場合、A君は
0123
4567
891011
B君は
0369
14710
25811
という順番で探す。
このとき、σ=0,3,6,9,1,4,7,10,2,5,8,11。
一般には、σ(nk+l)=ml+k (0≦k≦m-1, 0≦l≦n-1)。

ここまでをPythonで表すと:
#二項係数。SageMathでは定義ずみ
def binomial(n,r):
from math import factorial as f
return f(n)//f(r)//f(n-r) if r>=0 and n-r>=0 else 0

#置換p、宝c個で勝つ宝の配置の数
def nwinperm(p,c):
N = len(p)
return sum(binomial(len([j for j in range(i+1, N) if i<p[j]]),c-1)
for i in range(N) if i<p[i])

#部屋が縦m、横nのときの置換
def rectperm(m,n):
return [m*l+k for k in range(m) for l in range(n)]

#部屋が縦m、横n、宝がc個で横優先が勝つ宝の配置の数
def nwinrect0(m,n,c):
return nwinperm(rectperm(m,n),c)

続く
0196132人目の素数さん
垢版 |
2018/10/28(日) 20:32:10.70ID:x624ZJMX
>>195
続き

部屋が縦m、横nの場合を考えているが、もう少し計算を進める。
#{j| j>i, σ(j)>i} をこの場合に具体的に表そう。

i,j (0≦i,j≦mn-1)をそれぞれ nk+l, nk'+l' (0≦k,k'≦m-1, 0≦l,l'≦n-1) とする。
σ(i)>i ⇔ lm+k>nk+l ⇔ (m-1)l>(n-1)k、
j>i ⇔ nk+l>nk'+l' ⇔ 「k=k' かつ l<l'」または「k<k'」、
σ(j)>i ⇔ l'm+k'>nk+l ⇔ l' + k'/m > (nk+l)/m [ここで nk+lをmで割った商をq、余りをrとすると]
   ⇔ l' + k'/m > q + r/m ⇔ 「q≦l'≦n-1 ただし l'=q, k'≦r を除く」
を使って
#{j| j>i, σ(j)>i} = #{(k',l')|『「k=k' かつ l<l'」または「k<k'」』かつ l'm+k'>nk+l}
に出てくる『「k=k' かつ l<l'」または「k<k'」』かつ l'm+k'>nk+lを満たす組(k',l')の数を求める。
k=k' かつ l<l'のとき σ(i)>iからlm+k>nk+lだからl'm+k'>nk+lは常に成り立つので、l<l'≦n-1でn-1-l個。
k<k' のとき l'm+k'>nk+l ⇔ 「q≦l'≦n-1, k<k'≦m-1 ただし l'=q, k<k'≦r を除く」だから
(n-q)(m-1-k) - (r-k)δ(r>k)個、ただしδ(P)はPが真なら1、偽なら0である関数。
よって、#{j| j>i, σ(j)>i} = (n-1-l) + (n-q)(m-1-k) - (r-k)δ(r>k)。
したがって、求める数は
Σ[0≦k≦m-1, 0≦l≦n-1, (m-1)l>(n-1)k] binomial((n-1-l) + (n-q)(m-1-k) - (r-k)δ(r>k), c-1)。

これを使ったPythonコード:
#nloc(m,n,k,l)は縦m、横nの部屋で横優先が部屋(k,l)で初めて宝を発見する場合で
#宝が置かれても縦優先に先を越されない部屋の数。
def nloc(m,n,k,l):
q,r = divmod(n*k+l,m)
return (n-1-l) + (n-q)*(m-1-k) - (r-k if r > k else 0)

#部屋が縦m、横n、宝がc個で横優先が勝つ宝の配置の数
def nwinrect1(m,n,c):
return sum(binomial(nloc(m,n,k,l),c-1) for k in range(m) for l in range(n) if (m-1)*l>(n-1)*k)

続く
0197132人目の素数さん
垢版 |
2018/10/28(日) 20:34:35.87ID:x624ZJMX
>>196
続き

部屋がm×(m+1) (n=m+1) のとき。
(m-1)l>(n-1)k ⇔ 0≦k≦m-2 かつ k+1≦l≦m。
(nk+l)/m = k + (k+l)/m より k+l<mのときq=k,r=k+l、k+l≧mのときq=k+1,r=k+l-m。
r>k (k+l<m)とr≦k (k+l≧m)とに分けるように場合分けをする:
@0≦k≦[(m-1)/2], k+1≦l≦m-k-2 のとき r>k、
A[(m+1)/2]≦l≦m-1, m-1-l≦k≦l-1 または Bl=m, 0≦k≦m-2 のとき r≦k。

m=6のとき
×@@@@AB
××@@AAB
×××AAAB
××××AAB
×××××AB
×××××××

m=7のとき
×@@@@@AB
××@@@AAB
×××@AAAB
××××AAAB
×××××AAB
××××××AB
××××××××

後はΣの計算。>>60に合わせるとQ君がA君の立場でmが>>60でのn。
#以下 SageMathコード
,var m,n,l,k,q,r,c
T2 = (n-1-l) + (n-q)*(m-1-k)
T1 = T2 - (r-k)
#mが奇数の場合:
Q1 = (sum(sum(binomial(T1.subs({n:m+1,q:k,r:k+l}),c-1), l,k+1,m-k-2), k,0,(m-1)/2-1)
+ sum(sum(binomial(T2.subs({n:m+1,q:k+1,r:k+l-m}),c-1), k,m-1-l,l-1), l,(m+1)/2,m-1)
+ sum(binomial(T2.subs({n:m+1,l:m,q:k+1,r:k}),c-1), k,0,m-2)
).subs({m:n,c:2}).simplify_full().factor()
#mが偶数の場合:
Q2 = (sum(sum(binomial(T1.subs({n:m+1,q:k,r:k+l}),c-1), l,k+1,m-k-2), k,0,m/2-2)
+ sum(sum(binomial(T2.subs({n:m+1,q:k+1,r:k+l-m}),c-1), k,m-1-l,l-1), l,m/2,m-1)
+ sum(binomial(T2.subs({n:m+1,l:m,q:k+1,r:k}),c-1), k,0,m-2)
).subs({m:n,c:2}).simplify_full().factor()
def Q1st(x):
return (Q1 if mod(x,2) == 1 else Q2).subs({n:x})

続く
0198132人目の素数さん
垢版 |
2018/10/28(日) 20:36:18.50ID:x624ZJMX
>>197
続き

部屋がm×(m-1) (n=m-1) のとき。
(m-1)l>(n-1)k ⇔ 1≦l≦m-2 かつ 0≦k≦l。
(nk+l)/m = k + (l-k)/m より q=k,r=l-k。
r>k (l>2k)とr≦k (l≦2k)とに分けるように場合分けをする:
@0≦k≦[(m-3)/2], 2k+1≦l≦m-2 のとき r>k、
A1≦k≦[(m-3)/2], k≦l≦2k または B[(m-1)/2]≦k≦m-2, k≦l≦m-2 のとき r≦k。

m=7のとき
×@@@@@
×AA@@@
××AAA@
×××BBB
××××BB
×××××B
××××××

m=8のとき
×@@@@@@
×AA@@@@
××AAA@@
×××BBBB
××××BBB
×××××BB
××××××B
×××××××

後はΣの計算。>>60に合わせるとP君がA君の立場でmが>>60でのn+1。
#mが偶数の場合:
P1 = (sum(sum(binomial(T1.subs({n:m-1,q:k,r:l-k}),c-1), l,2*k+1,m-2), k,0,m/2-2)
+ sum(sum(binomial(T2.subs({n:m-1,q:k,r:l-k}),c-1), l,k,2*k), k,1,m/2-2)
+ sum(sum(binomial(T2.subs({n:m-1,q:k,r:l-k}),c-1), l,k,m-2), k,m/2-1,m-2)
).subs({m:n+1,c:2}).simplify_full().factor()
#mが奇数の場合:
P2 = (sum(sum(binomial(T1.subs({n:m-1,q:k,r:l-k}),c-1), l,2*k+1,m-2), k,0,(m-3)/2)
+ sum(sum(binomial(T2.subs({n:m-1,q:k,r:l-k}),c-1), l,k,2*k), k,1,(m-3)/2)
+ sum(sum(binomial(T2.subs({n:m-1,q:k,r:l-k}),c-1), l,k,m-2), k,(m-1)/2,m-2)
).subs({m:n+1,c:2}).simplify_full().factor()
def P1st(x):
return (P1 if mod(x,2) == 1 else P2).subs(n=x)

以上、整理して少し異なったけど>>161の導出でした。
0199132人目の素数さん
垢版 |
2018/10/28(日) 20:51:31.12ID:aWEG2qvY
>>198
P1 == 1/24*(6*n^3 + 20*n^2 - n - 27)*(n - 1) # nが奇数のとき
P2 == 1/4*n^4 + 7/12*n^3 - 7/8*n^2 - 13/12*n + 1 # nが偶数のとき
Q1 == 1/24*(6*n^2 + 10*n - 3)*(n + 1)*(n - 1) # nが奇数のとき
Q2 == 1/24*(6*n^2 - 2*n - 5)*(n + 2)*n # nが偶数のとき

それだけ前置きやってkを含めた式が作れないのですか?
0203132人目の素数さん
垢版 |
2018/10/28(日) 22:38:16.21ID:Z1Fuh7vT
私は何人かの方のコンピュータによる解法はすごいと思いました
正直、Pythonはわからないし、sagemathは数学そのものなのでまだ理解できていないので
読めたのはCだけですが…

久しぶりにまともなスレになった気がします
0204132人目の素数さん
垢版 |
2018/10/28(日) 22:46:21.43ID:aWEG2qvY
>>168
P(A)をP(B)で割ることによって
P君の勝つ数とQ君の勝つ数が導ける

P(A)/P(B)=(P君の勝つ数)/(Q君の勝つ数)

          {n(n+2)−k−1}/{n^2(n+1)−kn}
P(A)/P(B)=――――――――――――――――――――
          {n(n+2)−k}/{n(n+1)^2−k(n+1)}


       =(n+1)(n^2+2n−1−k)/{n^2(n+2)−nk}
          
        ∵[n≧2,n(n+1)−1>k≧1]

∵の範囲でnとkをいろいろと変えて見ることにより
様々な勝率が導ける

計算知能にそのまま入力するだけで通分と約分を
自動計算してくれるので試してごろうじろう

■Wolfram入力例

(n+1)(n^2+2n−1−k)/{n^2(n+2)−nk},k=2,n=3
0206132人目の素数さん
垢版 |
2018/10/29(月) 16:29:35.98ID:K6kqvvZ+
三角形ABCにおいて、
AからBCへ下した垂線をAD,
BCの中点をMとする。
BD > CDとすると
BD^2 - CD^2 = 2BC・MD を示せ。
0208132人目の素数さん
垢版 |
2018/10/29(月) 16:50:07.73ID:K6kqvvZ+
>>206
「垂線の定理」と言うらしい
0210132人目の素数さん
垢版 |
2018/10/29(月) 16:53:18.72ID:fIbV3UU4
スイセンか
ナルシストやね
0211132人目の素数さん
垢版 |
2018/10/29(月) 17:00:59.61ID:K6kqvvZ+
BD-CD=2MD

BD-MD=CD+MD

こんな感じか
0212132人目の素数さん
垢版 |
2018/10/29(月) 17:57:30.68ID:5zZ9Wrnc
>>206
BD^2 - CD^2 = (BD+CD) (BD-CD)
= BC ( (BM+MD) - (CM - MD) )
= 2BC・MD
(∵ BM=CM )

特に垂線である意味がないし「垂線の定理」って何かの間違いでは?
0216132人目の素数さん
垢版 |
2018/10/29(月) 20:28:17.47ID:WCQIfvcO
自然数a,b,cは以下の2つの等式を共に満たす。
a+b^2=c^3
a^2-b(b+c)=a+b+c

(1)このような(a,b,c)を一組求めよ。
(2)(1)で求めたもの以外に(a,b,c)の組が存在するなら、全て決定せよ。
0219132人目の素数さん
垢版 |
2018/10/29(月) 21:40:32.14ID:DqqH4kka
変な質問ですいません
最初にピタゴラスの定理を証明した人って、どういう発想で定理が正しいと考えたのでしょうか?直感でしょうか、経験的によく知られていたのでしょうか?
0220132人目の素数さん
垢版 |
2018/10/29(月) 21:53:25.38ID:Qhs7/BzP
ピタゴラスとエウクレイデスはどっちの方が賢いですか?
0222132人目の素数さん
垢版 |
2018/10/29(月) 22:03:14.93ID:Cj4YfFKv
>>219
証明はどうだかわからないがピタゴラスが多いついたのはタイルを見て予想したと言われているらしい
直角二等辺三角形を敷き詰めると直角二等辺三角形の場合にはピタゴラスの定理が成り立つことがすぐにわかる
ピタゴラスはそこから直角三角形なら常に成り立つのではないかと考えたということのようだ
0223132人目の素数さん
垢版 |
2018/10/29(月) 22:03:18.99ID:Qhs7/BzP
リーマン予想を証明したいのですが、まずは何から勉強をした方が良いのでしょうか?
0226132人目の素数さん
垢版 |
2018/10/29(月) 23:11:35.44ID:H845d6uJ
リーマン予想が証明されたとしたら、残りの他の全ての数学の未解決問題を自分一人で解決したい。
そのためにはやはり、数学の全分野だけでなく、物理学とか哲学とか計算機科学の全分野も究めないと無理なレベルでしょうか?
0227132人目の素数さん
垢版 |
2018/10/29(月) 23:33:15.93ID:Y5FWd7jd
とりあえず、二項定理くらいはわかるようになりましょうよ、ヒマラヤさん
0229132人目の素数さん
垢版 |
2018/10/29(月) 23:39:31.99ID:t6V71XZu
b^2=c^3-a
a=c^3-b^2

a^2-b(b+c)=a+b+c
a^2-b^2-bc=a+b+c
a^2-c^3+a-bc=a+b+c
a^2-c^3-bc-b-c=0
(c^3-b^2)^2-c^3-bc-b-c=0

の整数解を求める
0230132人目の素数さん
垢版 |
2018/10/29(月) 23:44:55.83ID:EbZkQmPV
>>142
宝の数を変化させるコードをHaskellに移植してみた。

import Data.List
import Data.List.Split
m = 5 -- 縦マス(短軸)
n = 6 -- 横マス(長軸)
k = 5 -- 宝の数
q = [0..m*n-1]
matQ = chunksOf m q
matP = transpose matQ --行列を転置して
p = concat matP -- 配列に変換

combinations :: Int -> [a] -> [[a]]
combinations 0 _ = [ [] ]
combinations n xs = [ y:ys | y:xs' <- tails xs, ys <- combinations (n-1) xs']
treasure = combinations k q -- 宝の組み合わせ
ip y = minimum $ map(\x -> elemIndices x p!!0) y -- 宝の、配列pでのindex列を求めて最小値を返す
iq y = minimum $ map(\x -> elemIndices x q!!0) y

idxp = map ip treasure -- 宝の組み合せで実行して
idxq = map iq treasure

p_q = zipWith (-) idxp idxq -- 差をとって大小判別
p1st = length $ filter (<0) p_q -- 短軸方向探索pが先に宝をみつける
q1st = length $ filter (>0) p_q
draw = length $ filter (==0) p_q

main = do
putStrLn $ "p1st = " ++ show p1st ++ ", q1st = " ++ show q1st ++ ", draw = " ++ show draw


Prelude> :main
p1st = 54036, q1st = 55469, draw = 33001
0231132人目の素数さん
垢版 |
2018/10/29(月) 23:56:48.49ID:xsxPk+Li
無限ホテルのパラドックス読んでてわからないことがあって、新しい宿泊客のために既存の客が部屋を一つづつずらすってあるけど、あれは何でそうなるの?
ネットで調べたけどそれらしい答えが無くて困ってる
無限ホテルが集合論のお話で、ホテルは可算無限集合、無限に居る宿泊客全員も可算無限集合で、どっちも無限としての大きさが合うから部屋は過不足なく用意されるって話だってところまではネットで読んだ
で、Wikipediaには順序数? の計算ルールが書いてあって、1+ωとω+1は違うってあったからこれが部屋移動の理由かと最初は思った
でも無限ホテルって無限人の来客があってもokってあるから、これってω+ωでどこに客をぶちこんでも意味変わらないなと
だからこの予想は違うと今は思ってる
この疑問のしっくり来る(理解できる)解説が見つからなくてずっとモヤモヤしてるので、誰か教えてくれるとありがたいです
0232132人目の素数さん
垢版 |
2018/10/29(月) 23:58:10.32ID:EbZkQmPV
-- バグ修正(行と列を間違えていた(._.)

import Data.List
import Data.List.Split
m = 5 -- 縦マス(短軸)
n = 6 -- 横マス(長軸)
k = 5 -- 宝の数
q = [0..m*n-1]
matQ = chunksOf n q
matP = transpose matQ --行列を転置して
p = concat matP -- 配列に変換

combinations :: Int -> [a] -> [[a]]
combinations 0 _ = [ [] ]
combinations n xs = [ y:ys | y:xs' <- tails xs, ys <- combinations (n-1) xs']
treasure = combinations k q -- 宝の組み合わせ
ip y = minimum $ map(\x -> elemIndices x p!!0) y -- 宝の、配列pでのindex列を求めて最小値を返す
iq y = minimum $ map(\x -> elemIndices x q!!0) y

idxp = map ip treasure -- 宝の組み合せで実行して
idxq = map iq treasure

p_q = zipWith (-) idxp idxq -- 差をとって大小判別
p1st = length $ filter (<0) p_q -- 短軸方向探索pが先に宝をみつける
q1st = length $ filter (>0) p_q
draw = length $ filter (==0) p_q

main = do
putStrLn $ "p1st = " ++ show p1st ++ ", q1st = " ++ show q1st ++ ", draw = " ++ show draw

>matrix.exe
p1st = 55469, q1st = 54036, draw = 33001
0233132人目の素数さん
垢版 |
2018/10/30(火) 00:30:32.81ID:pMMbbUDs
>>231
先頭を開けて1人追加するのは 1+ω = ω
倍の部屋番号へ移して ω 人追加するのは 2ω = ω
0234132人目の素数さん
垢版 |
2018/10/30(火) 00:43:18.09ID:i2Q1wF9o
リーマン予想とP≠NP予想はどっちの方が証明するのが難しいですか?
0235132人目の素数さん
垢版 |
2018/10/30(火) 03:04:00.18ID:1kUFo2x+
ABC
EFG

n=2の6マスでP君Q君のそれぞれのファーストの
組の総数をお願いします<(_ _)>
0237132人目の素数さん
垢版 |
2018/10/30(火) 04:26:38.58ID:uBW8ean2
p win : CE, EF, EG, FG
q win : BC, BF, BG, CF, CG
even : AB, AC, AE, AF, AG, BE
かと思った
0238132人目の素数さん
垢版 |
2018/10/30(火) 04:35:38.02ID:m3nuFJvJ
ABC
DEF

P勝ち  CD DE DF EF
Q勝ち  BC BE BF CE CF
引分け  AB AC AD AE AF BD
0239132人目の素数さん
垢版 |
2018/10/30(火) 04:38:18.15ID:uBW8ean2
質問では DEF が EFG になってるのから俺はちゃんとその通りにやってるのにお前らときたら自由だな…
>>236に至ってはよく見るとABCDEFGの7種使ってるし
0240132人目の素数さん
垢版 |
2018/10/30(火) 05:53:06.67ID:DPMEzEI3
>>233
ありがとうございます
連続の質問になって申し訳ないんで付けど、2ωとω+ωってこれは違うものなんですか?
0241132人目の素数さん
垢版 |
2018/10/30(火) 05:57:47.96ID:m3nuFJvJ
自由ついでに分かりやすいように数字に置き換えてみた
1個目だけじゃなく、2個目の宝を先に見つけることも考えたら
結局、PQで差はないという直感どおりの結果になるな

123
456

12 ・Q
13 ・Q
14 ・P
15 ・P
16 ・・
23 QQ
24 ・P
25 QP
26 Q・
34 PQ
35 Q・
36 Q・
45 PP
46 P・
56 P・
0243132人目の素数さん
垢版 |
2018/10/30(火) 07:07:11.36ID:t8neO5le
自己レス

とりあえず元論文はコレらしい

[24] G. Robin, Grandes valeurs de la fonction somme de diviseurs et hypoth`ese de Riemann,
J. Math. Pures Appl. 63 (1984), 187–213.

英語で読めるのないかなぁ?
0244132人目の素数さん
垢版 |
2018/10/30(火) 07:43:21.61ID:TZqGbv4d
5×6マスで宝の数を10まで増やしていくと、

D:\bin>for %i in (1,2,3,4,5,6,7,8,9,10) do treasure 5 6 %i

D:\bin>treasure 5 6 1
p1st = 14, q1st = 14, draw = 2

D:\bin>treasure 5 6 2
p1st = 203, q1st = 197, draw = 35

D:\bin>treasure 5 6 3
p1st = 1801, q1st = 1727, draw = 532

D:\bin>treasure 5 6 4
p1st = 11418, q1st = 11008, draw = 4979

D:\bin>treasure 5 6 5
p1st = 55469, q1st = 54036, draw = 33001

D:\bin>treasure 5 6 6
p1st = 215265, q1st = 211894, draw = 166616

D:\bin>treasure 5 6 7
p1st = 685784, q1st = 680768, draw = 669248

D:\bin>treasure 5 6 8
p1st = 1827737, q1st = 1825076, draw = 2200112

D:\bin>treasure 5 6 9
p1st = 4130886, q1st = 4139080, draw = 6037184

D:\bin>treasure 5 6 10
p1st = 7995426, q1st = 8023257, draw = 14026332



1:同等
1〜8:短軸探索有利
9、10:長軸探索有利
という結果になった。

Haskellのコードはここ

--exe Fileにコンパイルしてコマンドラインから実行できるように改変(但し、エラー処理皆無)
https://rio2016.5ch.net/test/read.cgi/math/1490734993/209
0245132人目の素数さん
垢版 |
2018/10/30(火) 07:47:14.67ID:TZqGbv4d
>>235
$Rscript main.r
P1st Q1st even
3 4 13

6マスで宝を3個にしてみた

$Rscript main.r
P1st Q1st even
3 4 13

P 1st
[,1] [,2] [,3]
[1,] C C D
[2,] D D E
[3,] E F F

Q 1st
[,1] [,2] [,3] [,4]
[1,] B B B C
[2,] C C E E
[3,] E F F F

even
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13]
[1,] A A A A A A A A A A B B B
[2,] B B B B C C C D D E C D D
[3,] C D E F D E F E F F D E F

Rのスクリプトをここに置いたから数値を変更して実行可能

http://tpcg.io/X3bC0A
0246132人目の素数さん
垢版 |
2018/10/30(火) 08:05:02.49ID:TZqGbv4d
>>241
自由ついでに5×6マスで宝が5個、先に全部の宝を見つけた方が勝者とすると

これくらい差が出る

D:\bin>treasure2 5 6 5

p1st = 54036, q1st = 55469, draw = 33001

確率にすると
> treasure2(5,6,5)
P1st Q1st even
54036 55469 33001
> 54036/(54036+55469+33001)
[1] 0.379184
> 55469/(54036+55469+33001)
[1] 0.3892398

なので差があると直観するかどうかは個々人の感性だな。
0248132人目の素数さん
垢版 |
2018/10/30(火) 10:18:37.37ID:TZqGbv4d
>>247
使える人間にとっては電卓みたいなもんだよ。
log2の計算にいちいちマクローリン展開して手書き計算しないだろ。
0249132人目の素数さん
垢版 |
2018/10/30(火) 10:39:58.25ID:mcxWdfpM
ここまでjuliaが出てこなかった
juliaが流行しているのは自分の周りだけなのかな
(NGに巻き込まれて見えてないだけだったらゴメン)
0250132人目の素数さん
垢版 |
2018/10/30(火) 11:31:49.43ID:txysSoS4
>>249
どれかを移植して実力を示していただけたらうれしい。

5✕6マスで宝が15個の時の計算とかまだ誰も出してない。
0251132人目の素数さん
垢版 |
2018/10/30(火) 11:59:04.31ID:TZqGbv4d
>>241
先に2個の宝をみつけた方なら

123
456

12 Q
13 Q
14 P
15 P
16 =
23 Q
24 P
25 P
26 =
34 Q
35 =
36 =
45 P
46 =
56 =

にならない?
0252132人目の素数さん
垢版 |
2018/10/30(火) 12:07:08.08ID:TZqGbv4d
>>241
2個を先にみつけるじゃなくて

これは1個めの発見はQの方が確率が高くて、2個めに発見はPの方が確率が高いというだけの話だったみたいね。
0253132人目の素数さん
垢版 |
2018/10/30(火) 12:13:42.28ID:mcxWdfpM
>>250
juliaが周りで流行ってるだけで自分自身はCの人(Cソース書いてくれた人とは別人)

5x6ますで宝15個とか、ID:TZqGbv4dにお願いしたらすぐやってくれるんじゃない?
完全に作り直してるし。
0254132人目の素数さん
垢版 |
2018/10/30(火) 13:03:57.24ID:TZqGbv4d
>>252
i 番目をどちらが先にみつけるかを計算してみた。

4×5マスに宝が5個あるとき

> treasures(4,5,5)
p1st q1st even
[1,] 1948 9680 3876
[2,] 5488 10016 0
[3,] 7752 7752 0
[4,] 10016 5488 0
[5,] 9680 1948 3876

1個め2個めは短軸方向探索のQが、4個め5個めは長軸方向探索のPが、先にみつける宝の配置の組み合わせが多い。3個めは同じ。

全体としてはイーブンだが、

勝者は1個めを先にみつけた方にするか、全部を先にみつけた方にするかで結果が変わる。

Rのコードはここに置いたので数値を変えて実行可能。

http://tpcg.io/Ph7TUQ
0255132人目の素数さん
垢版 |
2018/10/30(火) 13:37:28.67ID:SFtp+jj6
n元集合からk個の元を取り出す順番を考慮して可能な場合を数え上げるとn*(n-1)*....*(n-k+1)通りあるというのはより原始的なものから導かれるものですか?
0256132人目の素数さん
垢版 |
2018/10/30(火) 14:00:45.62ID:ioBJjPrr
>>248
「プログラムで、ごり押し計算」
「マクローリン展開して手書き計算」
俺は後者の方が美しく感じるけどな。
実は前者で計算したのに後者を装ってほしいくらい。 (※ 私見です)
0257132人目の素数さん
垢版 |
2018/10/30(火) 14:14:18.76ID:uBW8ean2
>>254
単なる確認なんだけれども、
「i番目をどちらが見つけるか」というのは
先にi個見つけた方を勝ちとするのではなくて

例えばi=2だと
Pが1つ発見、Qが1つ発見⇒2番目を見つけたQの勝ち、ということですか?
0259132人目の素数さん
垢版 |
2018/10/30(火) 14:26:37.34ID:txysSoS4
>>257
>254の計算は各人にとってi番めの計算。
例えばi=2だと
Pが1つ発見、Qが1つ発見だと勝敗は未決で
どちらが発見者にとって2個めを発見したらそれが勝者として数えた。
0260132人目の素数さん
垢版 |
2018/10/30(火) 15:54:47.28ID:TZqGbv4d
んで、
ここまで答が出せた

254 名前:132人目の素数さん[sage] 投稿日:2018/10/30(火) 13:03:57.24 ID:TZqGbv4d
>>252
i 番目をどちらが先にみつけるかを計算してみた。

4×5マスに宝が5個あるとき

> treasures(4,5,5)
p1st q1st even
[1,] 1948 9680 3876
[2,] 5488 10016 0
[3,] 7752 7752 0
[4,] 10016 5488 0
[5,] 9680 1948 3876

1個め2個めは短軸方向探索のQが、4個め5個めは長軸方向探索のPが、先にみつける宝の配置の組み合わせが多い。3個めは同じ。

全体としてはイーブンだが、

勝者は1個めを先にみつけた方にするか、全部を先にみつけた方にするかで結果が変わる。

Rのコードはここに置いたので数値を変えて実行可能。

http://tpcg.io/Ph7TUQ
0261132人目の素数さん
垢版 |
2018/10/30(火) 16:19:16.88ID:txysSoS4
>>260
全体を眺めると直感的通り互角。
局所でみると濃淡があるということと理解した。
0262132人目の素数さん
垢版 |
2018/10/30(火) 16:39:29.02ID:wUEbhoSy
ゲルト・ファルティングスとアラン・コンヌの知能指数はどれくらいですか?
0263132人目の素数さん
垢版 |
2018/10/30(火) 16:45:15.00ID:wUEbhoSy
「真理」というのは存在するのでしょうか?
「真理」の探究は意味があるのでしょうか?
0264132人目の素数さん
垢版 |
2018/10/30(火) 16:54:34.66ID:wUEbhoSy
マイケル・アティヤとエドワード・ウィッテンはどっちの方が賢いですか?
0265132人目の素数さん
垢版 |
2018/10/30(火) 18:53:47.66ID:TZqGbv4d
>>253
ここまでは算出できたが、宝を14にしたらエラー終了した。

D:\bin>treasure 5 6 11
p1st = 13346984, q1st = 13395944, draw = 27884372

D:\bin>treasure 5 6 12
p1st = 19312228, q1st = 19372871, draw = 47808126

D:\bin>treasure 5 6 13
p1st = 24301031, q1st = 24358063, draw = 71100756
0266132人目の素数さん
垢版 |
2018/10/30(火) 19:00:13.09ID:1kUFo2x+
>>92
■引き分けの組み合わせは勝敗と無関係なので除外

宝が2個以上の時、
スタート地点のAマスと対極にある最終マスのLには
P君もQ君もどちらも決してたどり着くことはできないので
このLマスと組みとなる宝の配置は重複情報で意味を持たない
ので除外する

Pが先に見つけるのは以下の21通り
CE,DE,DI,EF,EG,EH,EI,EJ,EK,FG,FH,FI,FJ,FK,GI,GJ,HI,HJ,IJ,IK,JK,

Qが先に見つけるのは以下の22通り
BC,BD,BF,BG,BH,BI,BJ,BK,CD,CF,CG,CH,CJ,CK,DF,DG,DH,DJ,DK,GH,GK,HK,

となる
0267132人目の素数さん
垢版 |
2018/10/30(火) 20:06:33.85ID:m3nuFJvJ
>>260
何マスだろうが、宝が何個であろうが
出発点と終点が同じであれば
PQの宝を得られる個数の期待値は同じということだな
0269132人目の素数さん
垢版 |
2018/10/30(火) 20:16:22.96ID:TZqGbv4d
>>267
期待値は宝の数なわけで、元の問題は1個めをみつけるステップの数を比較しているんだと思う。
0270132人目の素数さん
垢版 |
2018/10/30(火) 20:27:29.84ID:TZqGbv4d
>>267
宝を先にみつけたら独り占め、同時にみつけたら折半 というルールなら手に入れる宝の数の期待値は同じになるだろうね。
0271132人目の素数さん
垢版 |
2018/10/30(火) 20:34:58.13ID:j0+hm9Fv
>>268
BI, CIは引き分けで除外なのでは

>>265
メモリを食わないコードを書いてみた
今思ったけど再帰で書いた方が読みやすかったか
https://ideone.com/HaAqJO

>>270
n x n+1 の部屋を縦横に調べる2人の場合は先着する部屋数が等しくなるからそうなるね
p君 ABCDEFGHIJKL
q君 BCDEFGHIJKLA
とかなら殆どq君が独り占め
0273132人目の素数さん
垢版 |
2018/10/30(火) 20:45:58.07ID:1kUFo2x+
>>238
ABC
DEF

P勝ち  CD DE 
Q勝ち  BC BE  CE 

勝敗だけ知りたければデータ圧縮が可能
0274132人目の素数さん
垢版 |
2018/10/30(火) 21:02:19.29ID:j0+hm9Fv
P君Q君問題から得られる知見
早い者勝ちなら先回りすることが勝つ秘訣
0275132人目の素数さん
垢版 |
2018/10/30(火) 21:22:07.77ID:txysSoS4
>>274
>244に数値を挙げたけど宝の数が増えると逆転しちゃう。
個人的にはどこが逆転する境なのか算出方法が知りたいところ。
0276132人目の素数さん
垢版 |
2018/10/30(火) 21:26:43.68ID:DPMEzEI3
>>233
質問してばっかりだったので反省して自分で調べてみたんですけど
ω+ω=ω×ω=ω2だってことでした
でも、これは「無限ホテルのω号室の次の部屋からω人の客を泊めた」って事ですよね?
だから無限ホテルの話にあるように1号室→2号室、2号室→4号室、3号室→6号室とずらして、間に入れ込めば2ω=ωになって万事解決って事で合ってますか?
0277276
垢版 |
2018/10/30(火) 21:32:47.59ID:DPMEzEI3
>>276
ω×ωはちがうかった……
これじゃω^2になっちゃう
0278132人目の素数さん
垢版 |
2018/10/30(火) 22:12:40.40ID:1kUFo2x+
q1..q2..q3..q4
q5..q6..q7..q8
q9q10q11q12

p1..p4..p7..p10
p2..p5..p8..p11
p3..p6..p9..p12

同じ座標なら数字の小さいほうが勝ち
0279132人目の素数さん
垢版 |
2018/10/30(火) 22:27:09.96ID:1kUFo2x+
[q2とq10] & [p4とp6]に宝が配置された時は

互いに数字の小さいほうを選んで勝負

q2 vs p4 で q2の勝ちとなる

この後にq10とp6の探査をしても
情報としての価値はゼロ
0280132人目の素数さん
垢版 |
2018/10/30(火) 22:38:59.14ID:j0+hm9Fv
>>276
>だから無限ホテルの話にあるように1号室→2号室、2号室→4号室、3号室→6号室とずらして、間に入れ込めば2ω=ωになって万事解決って事で合ってますか?

そうそう
0281132人目の素数さん
垢版 |
2018/10/30(火) 22:51:43.84ID:CVZYPi3J
まだ続いているようなので、>>189の後半で示したようなアイデアで、宝の数可変版の
プログラムを書いてみました。
多倍長を使える処理系を用いればいいのかもしれませんが、実数型で誤魔化しました。
故に大きな数字のところでは誤差があります。

http://codepad.org/VN03aiqT
0283132人目の素数さん
垢版 |
2018/10/30(火) 23:22:12.50ID:NK3I4+n+
てか>>194-199に書いてある事がちゃんと読めれば宝の数が何個になっても場合わけ+多項式で記述できるのはすぐわかる。
読めよ。数学板なんだから。
0284132人目の素数さん
垢版 |
2018/10/31(水) 00:17:31.03ID:2LxBlHwr
>>281
いつもありがとうございます。
いやぁ、この出力は圧巻ですね。
Haskell先生もびっくり。
0286132人目の素数さん
垢版 |
2018/10/31(水) 00:38:46.92ID:Ikjqn6xu
>>282 >>283
失礼しました。
数列を無理矢理分数式化する人や、価値の無い長い文章を投下する人がいるので、
読み飛ばしていました。
宝箱が二つの場合は、多項式での表現が完成していたんですね。
あのようなσやδを含む式を整理する数式処理ツールがあったとは驚きです。
二個で可能だったのだから、もっと多くの場合でも、可能なんでしょうね。
0287132人目の素数さん
垢版 |
2018/10/31(水) 01:01:33.69ID:JttzkDdq
P1 == 1/24*(6*n^3 + 20*n^2 - n - 27)*(n - 1) # nが奇数のとき
P2 == 1/4*n^4 + 7/12*n^3 - 7/8*n^2 - 13/12*n + 1 # nが偶数のとき
Q1 == 1/24*(6*n^2 + 10*n - 3)*(n + 1)*(n - 1) # nが奇数のとき
Q2 == 1/24*(6*n^2 - 2*n - 5)*(n + 2)*n # nが偶数のとき

多項式ってこれだけ?
kは変えられないし出力は意味不明だしナニコレ?

>>204の式ならk=554222,n=322300988とかでも
数秒で出力してくれるよ
0288132人目の素数さん
垢版 |
2018/10/31(水) 01:06:31.87ID:J5/yP0Q2
>>204の式ならkにどんな整数をいれても正解にならん。n=3でやってみろよ。
でn=3の場合66通り全部書きだして比較してみろよ。
実際書き出してみた正解とひとつも合わない式になんの意味がある?
0290132人目の素数さん
垢版 |
2018/10/31(水) 01:17:26.16ID:Xdi8PWHY
>>289
Prelude Data.Ratio> print [(n+1)*(n^2+2*n-1-k)%(n^2*(n+2)-n*k)|let n = 3,k<-([0..14]++[16..30])]
[56 % 45,26 % 21,16 % 13,11 % 9,40 % 33,6 % 5,32 % 27,7 % 6,8 % 7,10 % 9,16 % 15,1 % 1,8 % 9,2 % 3,0 % 1,8 % 3,2 % 1,16 % 9,5 % 3,8 % 5,14 % 9,32 % 21,3 % 2,40 % 27,22 % 15,16 % 11,13 % 9,56 % 39,10 % 7,64 % 45]
Prelude Data.Ratio>
kに0〜30何入れても正解なんぞ出てこんやろ?
0292132人目の素数さん
垢版 |
2018/10/31(水) 01:22:51.22ID:JttzkDdq
k=554299747212,n=3212301098855

でも出力できたよ
ためしてごろうじろう
0293132人目の素数さん
垢版 |
2018/10/31(水) 01:28:28.82ID:9szLelGu
>>291
k>15だとすべて4/3より大きい値しかでないからアウト。何入れてもだめ。

>>292
n = 3〜100までいれて全滅の式にそんな値いれても糞の意味もない。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況