プログラミングのお題スレ Part22 (831レス)
プログラミングのお題スレ Part22 http://mevius.5ch.net/test/read.cgi/tech/1691038333/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
802: デフォルトの名無しさん [] 2025/08/16(土) 20:29:06.33 ID:kN4EEg8M >>799 の問題B R https://ideone.com/SdWBKf C++ https://ideone.com/90BpGt http://mevius.5ch.net/test/read.cgi/tech/1691038333/802
803: デフォルトの名無しさん [] 2025/08/16(土) 21:32:58.04 ID:kN4EEg8M >>799 >>802 のC++のithDuplicatedPermutation関数は引数が別の値(例えばn = 5, m = 3)のとき 正しく計算できなかったので修正。Rの方はintではなくdoubleで計算しているので問題ない。 https://ideone.com/uH8dpO http://mevius.5ch.net/test/read.cgi/tech/1691038333/803
808: デフォルトの名無しさん [] 2025/08/17(日) 20:40:30.84 ID:bUKuWE64 >>804 確かにそうだった。15!も14!もintの範囲内に収まらない。>>803でn = 5に変えた場合に正しい 出力になるのはたまたまだった。 >>802をBigInt化するだけで問題なかった。 R https://ideone.com/OgBxTJ C++ https://ideone.com/KLqe3g http://mevius.5ch.net/test/read.cgi/tech/1691038333/808
828: デフォルトの名無しさん [] 2025/08/29(金) 22:34:59.67 ID:uVFRnDIW >>802をCMD (Windowsバッチファイル) に移植 @echo off & setlocal EnableDelayedExpansion echo 【問題A】 for %%i in (1, 2, 3, 123456, 234567, 362880) do call :ithDuplicatedPermutation 9 1 %%i echo. echo 【問題B】 for %%i in (1, 2, 3, 123456, 234567, 369600) do call :ithDuplicatedPermutation 4 3 %%i exit /b :ithDuplicatedPermutation set /a n = %1, m = %2, i = %3, L = 0, P = 1 for /l %%j in (1, 1, %n%) do ( set /a c%%j = %m% for /l %%k in (1, 1, %m%) do set /a L += 1, P = P * L / %%k ) set a=%i% → for /l %%j in (1, 1, %L%) do ( set /a done = 0 for /l %%k in (1, 1, %n%) do ( if !done! equ 0 ( set /a "q = P * c%%k / (L - %%j + 1)" if !i! leq !q! ( set a=!a!%%k set /a c%%k -= 1, P = q, done = 1 ) else ( set /a i -= q ) ) ) ) echo %a% http://mevius.5ch.net/test/read.cgi/tech/1691038333/828
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.025s