プログラミングのお題スレです。
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
結果がある場合はそれも
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
※前スレ
プログラミングのお題スレ Part17
https://mevius.5ch.net/test/read.cgi/tech/1584031367/
探検
プログラミングのお題スレ Part18
■ このスレッドは過去ログ倉庫に格納されています
2020/07/14(火) 13:53:46.47ID:jW5p6F/e
703デフォルトの名無しさん
2020/10/17(土) 01:58:38.41ID:S6LboNFt >>695 Ruby
n = 20201016
nl = 0
while n > 0
nl = ((nc = (n.odd?)? nc + 1 : 0) > nl)? nc : nl
n >>= 1
end
puts nl
n = 20201016
nl = 0
while n > 0
nl = ((nc = (n.odd?)? nc + 1 : 0) > nl)? nc : nl
n >>= 1
end
puts nl
704デフォルトの名無しさん
2020/10/17(土) 01:59:32.64ID:u2s9P3C4 >>702
125の時1になった
125の時1になった
705デフォルトの名無しさん
2020/10/17(土) 02:41:53.51ID:AbkDXvLA これだからQZ
708デフォルトの名無しさん
2020/10/17(土) 12:19:37.13ID:a+zi+w45709デフォルトの名無しさん
2020/10/17(土) 13:46:27.15ID:eBu6AjRf710デフォルトの名無しさん
2020/10/17(土) 18:57:16.23ID:S6LboNFt711デフォルトの名無しさん
2020/10/17(土) 19:11:03.54ID:wXdm0x1E >>710
うまいやり方だな。それには気付かなかった。
うまいやり方だな。それには気付かなかった。
712デフォルトの名無しさん
2020/10/17(土) 19:29:10.40ID:wXdm0x1E >>695
Kotlin script
2進数文字列に変換してから 0 を区切り文字にして分割してその中の一番長い文字列の長さを出すというやり方。
fun max1(n: Int) = n.toString(2).split('0').map { it.length }.max()
println(max1(20201016))
これで 5 が出る。
同じやり方を perl5 で(特にモジュール使わずに)やるとこんな感じ。
perl -e '$n=20201016; $m = (sort { $b <=> $a } map { length($_) } (split /0+/, sprintf("%b", $n)))[0]; print "$m\n"'
同じく5が出る。
Kotlin script
2進数文字列に変換してから 0 を区切り文字にして分割してその中の一番長い文字列の長さを出すというやり方。
fun max1(n: Int) = n.toString(2).split('0').map { it.length }.max()
println(max1(20201016))
これで 5 が出る。
同じやり方を perl5 で(特にモジュール使わずに)やるとこんな感じ。
perl -e '$n=20201016; $m = (sort { $b <=> $a } map { length($_) } (split /0+/, sprintf("%b", $n)))[0]; print "$m\n"'
同じく5が出る。
713デフォルトの名無しさん
2020/10/17(土) 20:05:12.33ID:vimxgZ9f >>695 JavaScript
let num = 20201016
let ans = num.toString(2).split`0`.sort().pop().length
console.log(ans) //=> 5
let num = 20201016
let ans = num.toString(2).split`0`.sort().pop().length
console.log(ans) //=> 5
714デフォルトの名無しさん
2020/10/17(土) 20:50:55.84ID:w8j3NnhR >>695 octave
https://ideone.com/dO1WZp
f = @(n) max(cellfun(@numel, strsplit(dec2bin(n), '0')));
f(20201016)
https://ideone.com/dO1WZp
f = @(n) max(cellfun(@numel, strsplit(dec2bin(n), '0')));
f(20201016)
715デフォルトの名無しさん
2020/10/17(土) 20:54:06.81ID:frzgm+pU716デフォルトの名無しさん
2020/10/17(土) 23:22:21.08ID:P3PLPttw いつもRubyの人からなにかしら学ぶことがある
717デフォルトの名無しさん
2020/10/18(日) 00:42:32.49ID:nYmbGZmV ハトにエサを与えないで下さい
718デフォルトの名無しさん
2020/10/18(日) 01:06:12.01ID:qT62bbHa QZは自分の頭が悪いのをわざわざ周知してもらうためにクソコードを晒すのか
ドMだな
ドMだな
719デフォルトの名無しさん
2020/10/18(日) 03:42:01.18ID:DpwMGaW+720デフォルトの名無しさん
2020/10/18(日) 04:21:53.35ID:xWXtsYNK >>700 のほうが速いと思うが
721デフォルトの名無しさん
2020/10/18(日) 04:36:21.54ID:F/EhVBet rubyよく分からないけど>>710の方が100倍くらいは速そうに思える
722デフォルトの名無しさん
2020/10/18(日) 05:53:44.51ID:28u9FaXE うん。速そうだね。数値計算しかしてないし。
723デフォルトの名無しさん
2020/10/18(日) 10:06:25.57ID:ARbR7jXS 20201016みたいに桁数が少ないならそうだけど桁数が増えるとルーブが答え×桁数回だからアルゴリズムそのものは遅い
桁数が少ないうちは内部関数しか使ってない利点で早いとは思うけど
桁数が少ないうちは内部関数しか使ってない利点で早いとは思うけど
724デフォルトの名無しさん
2020/10/18(日) 12:07:22.14ID:GUbLWvo/ >>723
>>700,710 をベンチマークで比較してみた
https://ideone.com/t0ZYLg
https://ideone.com/DUEWmC
20201016 では 5~6倍
巨大な数だと 7000倍以上
>>700,710 をベンチマークで比較してみた
https://ideone.com/t0ZYLg
https://ideone.com/DUEWmC
20201016 では 5~6倍
巨大な数だと 7000倍以上
>>693
残念ながら、私の出題もイマイチ人気がありませんでした‥‥
残念ながら、私の出題もイマイチ人気がありませんでした‥‥
726デフォルトの名無しさん
2020/10/18(日) 21:20:25.30ID:wanN/5Zd727デフォルトの名無しさん
2020/10/18(日) 21:43:52.67ID:wanN/5Zd728デフォルトの名無しさん
2020/10/18(日) 22:06:12.69ID:wanN/5Zd729デフォルトの名無しさん
2020/10/18(日) 22:14:01.64ID:wanN/5Zd730デフォルトの名無しさん
2020/10/18(日) 22:45:56.62ID:F/EhVBet >>724
x = n
while x != 0
x &= x << 1
i += 1
end
ruby知らないから適当に書いたけど
こんな感じにしないと二回目以降nが0でやってるっぽい
こうすると22倍くらいの差だった
x = n
while x != 0
x &= x << 1
i += 1
end
ruby知らないから適当に書いたけど
こんな感じにしないと二回目以降nが0でやってるっぽい
こうすると22倍くらいの差だった
731デフォルトの名無しさん
2020/10/18(日) 22:54:22.98ID:F/EhVBet 連続してるビット数が多いときはこの方が速くなったけど
すごいごちゃごちゃになった
i = 0
s = 1
x = n
while x != 0
t = x & (x << s)
if t == 0 then
if s == 1 then
i += 1
break
end
s = 1
else
x = t
i += s
s = (s << 1)
end
end
すごいごちゃごちゃになった
i = 0
s = 1
x = n
while x != 0
t = x & (x << s)
if t == 0 then
if s == 1 then
i += 1
break
end
s = 1
else
x = t
i += s
s = (s << 1)
end
end
732デフォルトの名無しさん
2020/10/18(日) 22:56:30.98ID:QW0aA1Hz >>724
GJ
GJ
733デフォルトの名無しさん
2020/10/19(月) 06:30:07.92ID:8QFJcUQW >>695
echo "obase=2; 20201016" | bc | sed 's/./&\n/g' | uniq -c | perl -lane 'if ($M < $F[0]) {$M = $F[0]}; END{print $M}'
5
echo "obase=2; 20201016" | bc | sed 's/./&\n/g' | uniq -c | perl -lane 'if ($M < $F[0]) {$M = $F[0]}; END{print $M}'
5
734724
2020/10/19(月) 15:26:08.35ID:u+lqDWSF735デフォルトの名無しさん
2020/10/19(月) 17:41:48.20ID:Sd7Rn+fr お題
2^(1/3)を百桁表示せよ
出力
1.2599210498948731647672106072782283505702514647015079800819751121552996765139594837293965624362550941543102560356156652593990240
参考
a(n+3) = 3*a(n+2) + 3*a(n+1) + an
a(1) = 3, a(2)=3, a(3)=15
で決まる数列について
min (a(n)/a(n+1), a(n+1)/a(n+2), a(n+3)/a(n+3) )
. < 2^(1/3)-1
. max (a(n)/a(n+1), a(n+1)/a(n+2), a(n+2)/a(n+3) )
で lim a(n)/a(n+1) = 2^(1/3)-1となる
2^(1/3)を百桁表示せよ
出力
1.2599210498948731647672106072782283505702514647015079800819751121552996765139594837293965624362550941543102560356156652593990240
参考
a(n+3) = 3*a(n+2) + 3*a(n+1) + an
a(1) = 3, a(2)=3, a(3)=15
で決まる数列について
min (a(n)/a(n+1), a(n+1)/a(n+2), a(n+3)/a(n+3) )
. < 2^(1/3)-1
. max (a(n)/a(n+1), a(n+1)/a(n+2), a(n+2)/a(n+3) )
で lim a(n)/a(n+1) = 2^(1/3)-1となる
736デフォルトの名無しさん
2020/10/19(月) 21:36:44.38ID:gq9726ze737デフォルトの名無しさん
2020/10/19(月) 22:00:17.27ID:gq9726ze >>735 Bash
$ echo "scale=100;e(l(2) / 3)" | bc -l
1.25992104989487316476721060727822835057025146470150
79800819751121552996765139594837293965624362550940
$ echo "scale=100;e(l(2) / 3)" | bc -l
1.25992104989487316476721060727822835057025146470150
79800819751121552996765139594837293965624362550940
738デフォルトの名無しさん
2020/10/19(月) 22:30:56.87ID:14xSvmON >>735 dc
dcには平方根の演算子はあるが立方根はないので
c^(1/3) = sqrt(c/sqrt(c/sqrt(c/...)))
と変形して適当に反復
100k[2z333>av/]dsaxp
1.2599210498948731647672106072782283505702514647015079800819751121552\
996765139594837293965624362550941
dcには平方根の演算子はあるが立方根はないので
c^(1/3) = sqrt(c/sqrt(c/sqrt(c/...)))
と変形して適当に反復
100k[2z333>av/]dsaxp
1.2599210498948731647672106072782283505702514647015079800819751121552\
996765139594837293965624362550941
739デフォルトの名無しさん
2020/10/19(月) 23:54:32.40ID:mPlPc+C9 >>735
参考を誰も参考にしてくれないのにワロタ
参考を元に作ったコード
Haskell
https://ideone.com/ywJPjx
ちなみにrubyのpi.rbが同じテクニック使ってます
そっちは定数係数でない三項間関係の漸化式パージョン
参考を誰も参考にしてくれないのにワロタ
参考を元に作ったコード
Haskell
https://ideone.com/ywJPjx
ちなみにrubyのpi.rbが同じテクニック使ってます
そっちは定数係数でない三項間関係の漸化式パージョン
740デフォルトの名無しさん
2020/10/20(火) 02:36:31.61ID:gFGmv7lM >>736
たしかに
たしかに
741デフォルトの名無しさん
2020/10/20(火) 04:08:13.14ID:Mf7a0fdE おっせえじゃん
742デフォルトの名無しさん
2020/10/20(火) 21:07:35.93ID:hsuNVmIy お題:ぼくがかんがえたさいきょうのちょうわへいきん
2変数調和平均 f(x, y) = 2 / (1 / x + 1 / y)
但し xまたはyがゼロの時、f(x, y) == 0
の計算を考える。
Cのdoubleに相当する精度で計算する際に、理論値(≒多倍長精度で計算したものを
double相当に丸めたもの)と一致しない割合(エラー率)をモンテカルロ法で求めよ。
x, yは、正規分布N(0, 1)の絶対値に従うものとする。
発展的なお題:
前掲の調和平均の式を変形し、エラー率の変化を調べよ。例えば、
f(x, y) = 2 * x * y / (x + y)
のエラー率は、前掲の式と比較してどうだろうか?
また、2 / (1 / x + 1 / y)よりエラー率が低い式は在るだろうか?
発展的なお題その2:
x, yがベンフォードの法則に従う場合はどうなるか。
正規分布N(0, 1)の絶対値の場合と比べて、エラー率の順位は入れ替わるだろうか?
2変数調和平均 f(x, y) = 2 / (1 / x + 1 / y)
但し xまたはyがゼロの時、f(x, y) == 0
の計算を考える。
Cのdoubleに相当する精度で計算する際に、理論値(≒多倍長精度で計算したものを
double相当に丸めたもの)と一致しない割合(エラー率)をモンテカルロ法で求めよ。
x, yは、正規分布N(0, 1)の絶対値に従うものとする。
発展的なお題:
前掲の調和平均の式を変形し、エラー率の変化を調べよ。例えば、
f(x, y) = 2 * x * y / (x + y)
のエラー率は、前掲の式と比較してどうだろうか?
また、2 / (1 / x + 1 / y)よりエラー率が低い式は在るだろうか?
発展的なお題その2:
x, yがベンフォードの法則に従う場合はどうなるか。
正規分布N(0, 1)の絶対値の場合と比べて、エラー率の順位は入れ替わるだろうか?
743デフォルトの名無しさん
2020/10/22(木) 01:17:43.95ID:rA+WIIWx ...but nobody answered
744253
2020/10/23(金) 09:17:13.74ID:7L0FHKID 正規乱数をモンテカルロ法で算出して
doubleと多倍長浮動小数点でそれぞれ計差した2変数調和平均に
差がある率を求めれば良いの?
正規乱数なら書かなくともライブラリにあるんだよね。
あるいは誤り率の計算そのものにモンテカルロ法を使うようなやり方なのかな
doubleと多倍長浮動小数点でそれぞれ計差した2変数調和平均に
差がある率を求めれば良いの?
正規乱数なら書かなくともライブラリにあるんだよね。
あるいは誤り率の計算そのものにモンテカルロ法を使うようなやり方なのかな
745デフォルトの名無しさん
2020/10/23(金) 14:48:32.25ID:oxO2c12D 次のプリーズ
746デフォルトの名無しさん
2020/10/23(金) 20:02:36.14ID:Vzf4XOui お題
乱数を使ってシミュレーションしてください
ジョーカーを除くトランプ52枚から1枚抜き取って箱に入れました
その後、残った51枚から3枚引いて確認したら3枚ともダイヤでした
では最初に抜き取った箱の中が1枚がダイヤである確率はいくらか?
乱数を使ってシミュレーションしてください
ジョーカーを除くトランプ52枚から1枚抜き取って箱に入れました
その後、残った51枚から3枚引いて確認したら3枚ともダイヤでした
では最初に抜き取った箱の中が1枚がダイヤである確率はいくらか?
747デフォルトの名無しさん
2020/10/23(金) 20:27:24.17ID:LovVc5SM >>746 Ruby
DECK = [*0..51]
def hoge
a, *b = DECK.sample(4) until b&.all?{|v| v % 4 == 0}
a % 4 == 0
end
def fuga(n)
1.0 * n.times.count{hoge} / n
end
p fuga(1e6) # => 0.20414
p 10 / 59 # => 0.20408163265306123
DECK = [*0..51]
def hoge
a, *b = DECK.sample(4) until b&.all?{|v| v % 4 == 0}
a % 4 == 0
end
def fuga(n)
1.0 * n.times.count{hoge} / n
end
p fuga(1e6) # => 0.20414
p 10 / 59 # => 0.20408163265306123
748デフォルトの名無しさん
2020/10/23(金) 20:46:02.34ID:LovVc5SM 途中で送信してしまった
99%信頼区間は 0.20414±0.0010382 => [0.2031018, 0.2051782]
理論値は 10/49 = 0.20408163265306123
99%信頼区間は 0.20414±0.0010382 => [0.2031018, 0.2051782]
理論値は 10/49 = 0.20408163265306123
749デフォルトの名無しさん
2020/10/23(金) 20:49:11.91ID:5NWyTruo 確認前後での確率変動を出せ、っていうお題じゃねえのコレ
750デフォルトの名無しさん
2020/10/24(土) 01:58:03.71ID:6bv42JD2 お題
ジョーカー除く52枚のカードがある
スートを表すS,H,D,Cと、A,K,Q,J,X,9,8,7,6,5,4,3,2との2文字からなる文字列でカードの柄を表すこととする。
当然ながら52枚のうちどの2枚も同じ柄でない
この一組のカードを使ってポーカーゲームをする。
すなわち、初手のカード5枚を配られたプレイヤーは、そのうち0枚以上5枚以下のカードを場に捨てて、同じ枚数のカードを残りの山札47枚から引くことができる。
このときどのカードが選ばれるかは無作為であり、プレイヤーは選択できない。
さて、プレイヤーは、初手のカード5枚に対して、最終的に手に残る5枚のカードをポーカーのルールで評価して得られる配点の期待値が最も高くなるように捨て札を決めたい。
入力としてカード5枚が与えられたとき、そのような捨て札の組み合わせを求めるプログラムを記述せよ。
ここで、ポーカーの役と配点の対応はプログラムのパラメータとして組み込んで良い。
ジョーカー除く52枚のカードがある
スートを表すS,H,D,Cと、A,K,Q,J,X,9,8,7,6,5,4,3,2との2文字からなる文字列でカードの柄を表すこととする。
当然ながら52枚のうちどの2枚も同じ柄でない
この一組のカードを使ってポーカーゲームをする。
すなわち、初手のカード5枚を配られたプレイヤーは、そのうち0枚以上5枚以下のカードを場に捨てて、同じ枚数のカードを残りの山札47枚から引くことができる。
このときどのカードが選ばれるかは無作為であり、プレイヤーは選択できない。
さて、プレイヤーは、初手のカード5枚に対して、最終的に手に残る5枚のカードをポーカーのルールで評価して得られる配点の期待値が最も高くなるように捨て札を決めたい。
入力としてカード5枚が与えられたとき、そのような捨て札の組み合わせを求めるプログラムを記述せよ。
ここで、ポーカーの役と配点の対応はプログラムのパラメータとして組み込んで良い。
751デフォルトの名無しさん
2020/10/24(土) 21:09:47.85ID:xQuuF55s752デフォルトの名無しさん
2020/10/24(土) 23:43:41.92ID:DlOr4HzX753デフォルトの名無しさん
2020/10/25(日) 09:27:41.37ID:dKQi7OF0754デフォルトの名無しさん
2020/10/25(日) 10:49:49.59ID:zd7LSfWt755デフォルトの名無しさん
2020/10/25(日) 11:44:16.63ID:c/nOQwtG 746はシミュレーションも何もただの引っ掛け問題でしょ
モンティホール問題の方が引っ掛け問としては出来が良い
モンティホール問題の方が引っ掛け問としては出来が良い
756デフォルトの名無しさん
2020/10/25(日) 12:58:23.56ID:vQGWPLvq 引っかけも何も条件付確率の初歩の初歩の問題だろ
757デフォルトの名無しさん
2020/10/25(日) 14:14:17.31ID:tOCt4zCM 52枚トランプの束で2枚目から4枚目までがダイアであるような場合に限定してその内先頭もダイアであるような場合は全体の何バーセントかを問う問題
758742
2020/10/26(月) 01:17:42.67ID:LimhPZzI >>744
正規乱数自体は既存のライブラリで(Pythonならnumpy.random.randnとか)。
例えば、最初のお題(2/(1/x+1/y)で計算するやつ)は、34%位のエラー率になります。
正規乱数自体は既存のライブラリで(Pythonならnumpy.random.randnとか)。
例えば、最初のお題(2/(1/x+1/y)で計算するやつ)は、34%位のエラー率になります。
759253
2020/10/27(火) 00:51:04.61ID:uqMOOUWw そうすると俺にはモンテカルロ法をわざわざ使うところが
どこかよく分からないんだよね…
どこかよく分からないんだよね…
760デフォルトの名無しさん
2020/10/27(火) 23:07:51.35ID:9NNPSda/ 結局>>742は数学的にはどういう意味なんやろ
x,yがN(0,1)に従う独立確率変数、
ρ:R→RがDouble型に丸める関数(Doubleのレンジに入らない確率はほとんど0だから無視)、
h(x,y)=2xy/(x+y)
としたとき
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
って事?
x,yがN(0,1)に従う独立確率変数、
ρ:R→RがDouble型に丸める関数(Doubleのレンジに入らない確率はほとんど0だから無視)、
h(x,y)=2xy/(x+y)
としたとき
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
って事?
761253
2020/10/28(水) 00:01:38.74ID:Jno143Es 面白い記号だなそれ。
だが、他の人にも伝わるように書いた方が話が広がってよいよ。
どんなに数学が得意な人でも本当に優秀な人はそうすることができると思う
だが、他の人にも伝わるように書いた方が話が広がってよいよ。
どんなに数学が得意な人でも本当に優秀な人はそうすることができると思う
762デフォルトの名無しさん
2020/10/28(水) 00:17:22.90ID:3yQQm3er Φρズと書いてハイロウズと読みます
763デフォルトの名無しさん
2020/10/28(水) 00:21:17.79ID:n11gpLQR 煽りでもなく素直に疑問なのだが>>760のどこら辺がわからないんだ?
正規分布の下りか?
正規分布の下りか?
764253
2020/10/28(水) 00:30:53.43ID:Jno143Es >>762
マジレスしようと思ったが、そういう問題じゃないんだよ
言葉で書きゃー2,3行のことなんだから
言葉で人に伝わるように書けばいいだろ
と、突き放しちゃ実も蓋も無いので少しマジレスすると
ρ:R→R が写像なのは分かる。
がしかしだ
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
って、お前の教室のホワイトボードじゃねんだぞ。
そんなんでどうっやって世の人と付き合ってんだか…
マジレスしようと思ったが、そういう問題じゃないんだよ
言葉で書きゃー2,3行のことなんだから
言葉で人に伝わるように書けばいいだろ
と、突き放しちゃ実も蓋も無いので少しマジレスすると
ρ:R→R が写像なのは分かる。
がしかしだ
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
って、お前の教室のホワイトボードじゃねんだぞ。
そんなんでどうっやって世の人と付き合ってんだか…
765253
2020/10/28(水) 00:40:32.18ID:Jno143Es 大体、P()てのは何の関数だ。
どこにでもあるような関数名だが、一般的な関数か?
いや、そんなことの説明は要らない
お前の言いたいことはそんな自己流の式よりも
手短な読んで分かる日本語で書けるはずだ
いいやP()に限らない、お前のレスは一事が万事そんな感じ
一からからやり直せ
そしたら相手してやる
どこにでもあるような関数名だが、一般的な関数か?
いや、そんなことの説明は要らない
お前の言いたいことはそんな自己流の式よりも
手短な読んで分かる日本語で書けるはずだ
いいやP()に限らない、お前のレスは一事が万事そんな感じ
一からからやり直せ
そしたら相手してやる
766デフォルトの名無しさん
2020/10/28(水) 00:42:08.54ID:n11gpLQR768253
2020/10/28(水) 00:47:05.09ID:Jno143Es 簡単なことを
わざわざ難しいことのように書くのは
有能な人のすることではない
わざわざ難しいことのように書くのは
有能な人のすることではない
769デフォルトの名無しさん
2020/10/28(水) 00:51:02.28ID:n11gpLQR770253
2020/10/28(水) 01:00:33.01ID:Jno143Es >>769
別に落ち着いているけど
これか
https://ja.wikipedia.org/wiki/%E6%9D%A1%E4%BB%B6%E4%BB%98%E3%81%8D%E7%A2%BA%E7%8E%87
P()が確立っていつから?
俺が大学の頃まではこういう記法は見た記憶が無いんだけど
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
これは言葉で書いたらもっと分かりやすくならないのか?
別に落ち着いているけど
これか
https://ja.wikipedia.org/wiki/%E6%9D%A1%E4%BB%B6%E4%BB%98%E3%81%8D%E7%A2%BA%E7%8E%87
P()が確立っていつから?
俺が大学の頃まではこういう記法は見た記憶が無いんだけど
P(ρ(h(ρ(x),ρ(y))) ≠ ρ(h(x,y))) ≒ 34%
これは言葉で書いたらもっと分かりやすくならないのか?
771253
2020/10/28(水) 01:15:04.26ID:Jno143Es 結局 >>760 は
2 / (1 / x + 1 / y)をdoubleで計算した値と倍長精度で計算したものをdouble相当に丸めたものが一致しない割合
この一行をわざわざ他の人に分かりにくい式で再度書いているだけのこと
繰り返しだし分かりにくいし
意味(doubleで計算した値と倍長精度で計算したものをdouble相当に丸めたものが一致しない割合)
が欠落している
そういうことに気づきな
2 / (1 / x + 1 / y)をdoubleで計算した値と倍長精度で計算したものをdouble相当に丸めたものが一致しない割合
この一行をわざわざ他の人に分かりにくい式で再度書いているだけのこと
繰り返しだし分かりにくいし
意味(doubleで計算した値と倍長精度で計算したものをdouble相当に丸めたものが一致しない割合)
が欠落している
そういうことに気づきな
772デフォルトの名無しさん
2020/10/28(水) 01:17:27.13ID:6h0Rpnv/ 多分ですけど、あなた以外はそこまでわかりにくい表現だとは感じていないのだと思いますよ
773253
2020/10/28(水) 01:19:14.69ID:Jno143Es まじかw
そしたら回答山盛りだ
お前もさんも回答よろしくな
そしたら回答山盛りだ
お前もさんも回答よろしくな
774デフォルトの名無しさん
2020/10/28(水) 01:20:24.09ID:6h0Rpnv/ >>742の意味するところが数学的に自明になればおのずと回答も付くでしょう
775253
2020/10/28(水) 01:20:47.31ID:Jno143Es 蛇足だが、あの式で意味がわかった上で
まさか回答できなかったら、単なる無能だからな
まさか回答できなかったら、単なる無能だからな
777デフォルトの名無しさん
2020/10/28(水) 01:29:09.84ID:3yQQm3er778253
2020/10/28(水) 01:30:24.94ID:Jno143Es ふふ、それは
ヒ・ミ・ツ
ヒ・ミ・ツ
779デフォルトの名無しさん
2020/10/28(水) 01:43:43.54ID:3yQQm3er 教科書ないから高校数学 確率で一番上に出たやつ。
https://studysapuri.jp/contents/high/article/subject/sp/math00003.html
やっぱ高校の教科書に載ってたよなあww
仮に載ってなかったとして大学で使う書籍にもP載ってないって?w
> 俺が大学の頃まではこういう記法は見た記憶が無いんだけど
https://studysapuri.jp/contents/high/article/subject/sp/math00003.html
やっぱ高校の教科書に載ってたよなあww
仮に載ってなかったとして大学で使う書籍にもP載ってないって?w
> 俺が大学の頃まではこういう記法は見た記憶が無いんだけど
780253
2020/10/28(水) 01:56:33.39ID:Jno143Es ゆとり以降だなそりゃ
781デフォルトの名無しさん
2020/10/28(水) 02:11:35.07ID:d52OC3St 恥の上塗りするくらいなら黙ってればいいのに
782253
2020/10/28(水) 02:16:39.09ID:FRCNqyyj じゃあ何か自慢の回答でもしてよ
783742
2020/10/28(水) 05:10:48.17ID:MEeLXnFm784デフォルトの名無しさん
2020/10/28(水) 06:02:02.77ID:W3KKdO+Q >>742 C
https://ideone.com/iPEwg8
2 / (1 / x + 1 / y) のエラー率は 38.5%
2 * x * y / (x + y) のエラー率は 40.4%
と出た
https://ideone.com/iPEwg8
2 / (1 / x + 1 / y) のエラー率は 38.5%
2 * x * y / (x + y) のエラー率は 40.4%
と出た
785742
2020/10/28(水) 12:23:39.00ID:jim4KuYP >>784
h0の計算は、xdやxdをlong doubleにcastする感じで!
>double h0 = ( xl == 0. || yl == 0. ? 0. : 2. / (1.L / xd + 1.L / yd));
h0の計算は、xdやxdをlong doubleにcastする感じで!
>double h0 = ( xl == 0. || yl == 0. ? 0. : 2. / (1.L / xd + 1.L / yd));
786742
2020/10/28(水) 13:16:35.16ID:jim4KuYP 間違えました
double h0 = ( xd == 0. || yd == 0. ? 0. : 2. / (1.L / xd + 1.L / yd));
double h0 = ( xd == 0. || yd == 0. ? 0. : 2. / (1.L / xd + 1.L / yd));
787デフォルトの名無しさん
2020/10/29(木) 00:16:48.93ID:GFOWX4AY お題:言語機能のみを使い単方向リストを実装しメソッドpushとpopを実装せよ
pushはリスト末尾にノードをプッシュし、popはリスト末尾からノードをポップする
ノードの持つ値は整数とする
pushはリスト末尾にノードをプッシュし、popはリスト末尾からノードをポップする
ノードの持つ値は整数とする
788デフォルトの名無しさん
2020/10/29(木) 00:52:01.80ID:wtq/xrTf 複数pushできるの?
popも個数指定できるの?一個ずつ?
pushの戻り値はリスト自身?入れた値?成否?
popも個数指定できるの?一個ずつ?
pushの戻り値はリスト自身?入れた値?成否?
789デフォルトの名無しさん
2020/10/29(木) 01:01:50.46ID:GFOWX4AY790デフォルトの名無しさん
2020/10/29(木) 10:47:03.25ID:jsAu6jIB >>787 js
入出力のサンプルケース書いてないやつ絶対自分はやってないだろ
class SinglyLinkedList {
push(value) {
this.head = { next: this.head, value }
}
pop() {
if (!this.head) return
this.head = this.head.next
}
str() {
let { head } = this, s = ""
while (head) {
s += head.value + ", "
head = head.next
}
return s
}
}
入出力のサンプルケース書いてないやつ絶対自分はやってないだろ
class SinglyLinkedList {
push(value) {
this.head = { next: this.head, value }
}
pop() {
if (!this.head) return
this.head = this.head.next
}
str() {
let { head } = this, s = ""
while (head) {
s += head.value + ", "
head = head.next
}
return s
}
}
791デフォルトの名無しさん
2020/10/29(木) 12:03:58.95ID:GFOWX4AY792デフォルトの名無しさん
2020/10/29(木) 12:11:08.30ID:moZIRBYC >>791
「言語機能のみを使い」は引っかかる表現だったけどそれのことかい?
「言語機能のみを使い」は引っかかる表現だったけどそれのことかい?
793デフォルトの名無しさん
2020/10/29(木) 12:16:22.08ID:95aSRVZj オレもこの「言語機能のみを使い」がわからなかった
「ライブラリ関数使うな」か「文字列操作関数のみを使い」かどっちかかなと
わからんから様子見
「ライブラリ関数使うな」か「文字列操作関数のみを使い」かどっちかかなと
わからんから様子見
794デフォルトの名無しさん
2020/10/29(木) 12:18:16.67ID:GFOWX4AY795デフォルトの名無しさん
2020/10/29(木) 12:21:59.18ID:GFOWX4AY796デフォルトの名無しさん
2020/10/29(木) 12:33:09.26ID:AOpu1Zek stdlib.h使わずに作るの?
797デフォルトの名無しさん
2020/10/29(木) 12:36:05.93ID:jsAu6jIB798デフォルトの名無しさん
2020/10/29(木) 12:50:57.59ID:GFOWX4AY799デフォルトの名無しさん
2020/10/29(木) 13:24:14.72ID:GFOWX4AY800デフォルトの名無しさん
2020/10/29(木) 13:27:39.52ID:GFOWX4AY >>796
C/C++などの言語はmallocなどを使っても良いことにする
C/C++などの言語はmallocなどを使っても良いことにする
801デフォルトの名無しさん
2020/10/29(木) 15:09:10.20ID:dNWGwdex Haskellみたいな純粋関数だとそもそも標準ライブラリだけだと“状態”を作るのも難しいんだよな
同じ表現は永遠に同じ答えを返すからスタックの“状態”を変化させるというのがそもそもできない
それをなんとかするのに“モナド”というのがあるんだけど状態を処理する“ステートモナド”は標準ライブラリではないんだよな
ほとんど“準標準”だけど
同じ表現は永遠に同じ答えを返すからスタックの“状態”を変化させるというのがそもそもできない
それをなんとかするのに“モナド”というのがあるんだけど状態を処理する“ステートモナド”は標準ライブラリではないんだよな
ほとんど“準標準”だけど
802デフォルトの名無しさん
2020/10/29(木) 16:24:06.73ID:95aSRVZj State モナドを“準標準”と認めてもらえるなら簡単
Haskell
import Control.Monad.State
pop :: State [a] a
pop = do
a <- get
modify tail
return $ head a
push :: a -> State [a] ()
push x = do
modify ((x :))
return ()
test = do
push 1
push 2
push 3
a <- pop
b <- pop
c <- pop
return ([a,b,c])
main = print $ evalState test []
---
出力
[3,2,1]
Haskell
import Control.Monad.State
pop :: State [a] a
pop = do
a <- get
modify tail
return $ head a
push :: a -> State [a] ()
push x = do
modify ((x :))
return ()
test = do
push 1
push 2
push 3
a <- pop
b <- pop
c <- pop
return ([a,b,c])
main = print $ evalState test []
---
出力
[3,2,1]
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 [ぐれ★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★3 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 中国高官と話す外務省局長の表情、やばい ★2 [175344491]
- 偏差値35大臣「すぐに経済的威圧するところへの依存はリスク」 [834922174]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 【朗報】高市、中国からの日本行き空路49万件キャンセルを達成🤩オーバーツーリズム対策の手腕が光る [359965264]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
- 小野田経済安保相「すぐに経済的威圧するところへの依存はリスク」😲 [861717324]
