- 1 名前:デフォルトの名無しさん mailto:sage [2019/11/17(日) 09:00:22.10 ID:xqEdXdr6.net]
- プログラミングのお題スレです。
【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 結果がある場合はそれも 【ソースコードが長くなったら】 (オンラインでコードを実行できる) https://ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode https://runnable.com/ https://code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。 ※前スレ プログラミングのお題スレ Part15 mevius.5ch.net/test/read.cgi/tech/1564310397/
- 204 名前: mailto:sage [2019/12/09(月) 21:35:00.48 ID:ZryjKmS+.net]
- やりなおします
>>197 https://mevius.5ch.net/test/read.cgi/tech/1434079972/62 2625個
- 205 名前:デフォルトの名無しさん mailto:sage [2019/12/09(月) 22:42:10.29 ID:QbXWD96q.net]
- ふるいで5000以下の素数を求めて
2重ループで列挙 が速いかな
- 206 名前:デフォルトの名無しさん [2019/12/09(月) 22:48:18.91 ID:l5WymCFL.net]
- >>201
正解。Rでエラトステネスの篩を使って求めるプログラムを一応貼っておく。 https://ideone.com/anqKGW
- 207 名前:デフォルトの名無しさん [2019/12/10(火) 06:55:28 ID:cIwr+d9F.net]
- >>197 J
(smoutput~ 2=#@q:)@>>:i.10000 4 6 9 10 ... 9991 9993 9995 9997 9998
- 208 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 07:06:32 ID:qBy9puuu.net]
- 問題の一区分である素数判定、並びに範囲内の素数列挙するコード
https://ideone.com/fGT115 ~/bin/is_prime.exe 2 10000 とやれば1万までの素数が列挙され、 ~/bin/is_prime.exe 2017 と1つ引数与えればそれだけ判定 引数無いとURLの用にOFする限界付近まで全部 1万までの素数出して、それパイプで処理したら楽かなと思った
- 209 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 08:49:47 ID:92MPgAr5.net]
- 5000までの素数で十分だって言ってるのに
- 210 名前:デフォルトの名無しさん [2019/12/10(火) 09:32:39 ID:WOcT9SPT.net]
- >>197
お題:このお題の回答を論理式で表すとどうなるでしょうか。
- 211 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 09:53:12.04 ID:gKYhlG5V.net]
- >>207
それはプログラミングのお題なのか?
- 212 名前:デフォルトの名無しさん [2019/12/10(火) 13:07:12.61 ID:bINIS1ks.net]
- また数(ry
- 213 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 13:10:37.69 ID:FDwwVytW.net]
- 出題者はいろんな言語の表記方法を知りたいだけか?
数学やアルゴリズム的には全然おもしろくないのばかり
- 214 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 15:09:39 ID:zIz8I18p.net]
- >>197
https://ideone.com/wVVsOF C++。>>205 の素数判定パクりました。楽すぎ。 と、思ったらこれ、俺の回答間違ってる。
- 215 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 15:15:40 ID:zIz8I18p.net]
- >>197
https://ideone.com/1Vax7p C++。こうかいな。
- 216 名前:デフォルトの名無しさん [2019/12/10(火) 16:37:43 ID:hI+yeapE.net]
- >>210
お前が面白い問題出せばいいじゃん たぶん誰も解かないだろうけどwww
- 217 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 17:22:00.22 ID:Ajx0JUvY.net]
- 過去スレからお題引っ張りたいんだけど、有料会員じゃないからむりぽ
- 218 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 17:45:48.68 ID:qBy9puuu.net]
- 2chscとかいうのが無料サルベージに向いていると聞いたことがある
- 219 名前:デフォルトの名無しさん [2019/12/10(火) 17:47:09.91 ID:ClyY78bX.net]
- >>214
普通のブラウザで見ても出ないんだっけ?
- 220 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 18:57:11.15 ID:W3sLZ8lM.net]
- >>213
問題を出して人に解かせるのはあまり好きじゃない 解く方が好き
- 221 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 19:01:43.67 ID:W3sLZ8lM.net]
- 過去の良問があればおしえろください
- 222 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 19:30:15.36 ID:Ajx0JUvY.net]
- >>216
見れた( ゚Д゚)
- 223 名前:デフォルトの名無しさん [2019/12/10(火) 20:07:19.37 ID:ClyY78bX.net]
- >>219
そうか。普通のブラウザだとエロ広告が激しく付くからそれで過去スレ見せる料金なんとかしてるのかもね。 >>217 そんなあなたにとっておきのお題をひとつ。 お題: 面白いお題を作れ。
- 224 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 20:25:27.92 ID:6QYDHDQi.net]
- じゃあ四角形を全部違う大きさの円で埋める
- 225 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 21:05:07.05 ID:0RQ6ozIG.net]
- >>207
答えは高々有限個の整数でしかないんだから論理式にはならない
- 226 名前:デフォルトの名無しさん [2019/12/10(火) 22:54:03 ID:ZImsJVBi.net]
- >>210
まあ、そんな所だね。このスレは競技プログラミングじゃないから、アルゴリズムや パフォーマンスの追求よりは、各自が使う言語で楽な書き方ができるのを披露する方が多い。 >>203も可変長ベクトルへの再代入の繰り返しという非効率なことをやっているが、 自前のforループ不要で簡潔に書けるし、篩い落とす操作を忠実に表してもいる。 昔と違ってこれでも実用な速度で動くので、色々な書き方ができるようになった。 C#, Julia, PowerShellでも類似の書き方ができる(>>206の通り素数は5000までにした)。 C# https://ideone.com/YWc3f8 Julia https://ideone.com/8NdOe3 PowerShell https://ideone.com/DRoOMU R https://ideone.com/34lnNQ C#のstatic void Main()の中だけを抜き出したC#スクリプトも作って、それぞれの実行時間を PowerShellの measure-command {semiprime.exe} measure-command {csi semiprime.csx} measure-command {julia semiprime.jl} measure-command {semiprime.ps1} measure-command {rscript semiprime.R} で計測すると、C#を1倍として、R 3.40倍、C#スクリプト 10.1倍、Julia 16.6倍、 PowerShell 199倍となった。PowerShellだけは延々と待たされ実用的でない。 他の4つはすぐに終わるが、右へ行くほどややもたつく。Rは遅いと言われているが、 スクリプト言語の中ではかなり速い。
- 227 名前:デフォルトの名無しさん [2019/12/10(火) 22:54:55 ID:ZImsJVBi.net]
- >>217
じゃあ、これ解いてみる? 整数x, y, z, kに関する方程式x^3 + y^3 + z^3 = kの解を、k = 1から100までの場合について求めよ。 https://engineer.fabcross.jp/archeive/190921_charity-engine.html
- 228 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 23:25:26 ID:qBy9puuu.net]
- k = 64, z = 4の時
任意の整数 を+-反転した組が x,yの解であり、その個数は無限
- 229 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 23:27:52 ID:W3sLZ8lM.net]
- なぜ
k=1, z=1 じゃない?
- 230 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 23:47:24 ID:qBy9puuu.net]
- あとから追加されそうな条件の
仮に全部0以上の整数とした時に 5*5*5>125,100>4*4*4のメモ代り
- 231 名前:デフォルトの名無しさん mailto:sage [2019/12/10(火) 23:59:19 ID:RjwvfByt.net]
- k=1から100のどれかに対してじゃなくて、
k=1から100のそれぞれすべてに対して求めるんじゃろ…
- 232 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 00:11:02 ID:10jfhd7e.net]
- https://ideone.com/WP5jkx
10000000以下で0.04秒 C++は速い!
- 233 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 00:13:04 ID:10jfhd7e.net]
- C#の10000以下より速い!
- 234 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 00:30:48 ID:10jfhd7e.net]
- >>224
k=1の時からいきなり難しいなあ
- 235 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 00:40:32 ID:10jfhd7e.net]
- >>224
ん? 解を全て求めるのではなく 各kに対して1個解を求めればいいの?
- 236 名前:デフォルトの名無しさん [2019/12/11(水) 09:11:06 ID:aadkbL3F.net]
- >>197 seq, factor, awk
seq 10000 | factor | awk 'NF == 3'
- 237 名前:デフォルトの名無しさん [2019/12/11(水) 09:24:12 ID:ztpKOEip.net]
- >>233
awkのとここれどういう意味?わたし女騎士だけど教えて!
- 238 名前:デフォルトの名無しさん [2019/12/11(水) 10:31:05 ID:dG8VWZ74.net]
- >>234
女騎士? まあいいや。NFが3になる行だけ出力するんだよ。NFはフィールド数ね。 区切り文字がデフォルトのままだと空白文字で区切った時の個数。例えば行に a b c って入ってたら 3 になる。
- 239 名前:デフォルトの名無しさん [2019/12/11(水) 12:05:48.97 ID:dG8VWZ74.net]
- >>197
Kotlin https://paiza.io/projects/6zHoXJXw1KuNLWZViVDYug
- 240 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 13:38:08.03 ID:ivhCTlPt.net]
- >>233
素因数分解しちゃえばいいのか サイコー
- 241 名前:デフォルトの名無しさん [2019/12/11(水) 13:42:56.98 ID:QbvBtpFM.net]
- >>233
やってみたら --- Data stack: って出力が10000行並ぶだけなんだけど… なんかオプションいる?
- 242 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 14:03:27.78 ID:jagg9gKF.net]
- 普通にできたけど
何のシェル使ってるの?
- 243 名前:デフォルトの名無しさん [2019/12/11(水) 14:35:31 ID:QbvBtpFM.net]
- bash。macで。
- 244 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 14:38:38 ID:jagg9gKF.net]
- 俺もbashもだけど
seq 100くらいなら動くの?
- 245 名前:デフォルトの名無しさん [2019/12/11(水) 15:36:13.32 ID:QbvBtpFM.net]
- $ seq 3 | factor で止めてawk飛ばすと以下の出力です。
Factor 0.98 x86.64 (1886, heads/master-211d69561a, Jul 2 2018 17:46:19) [Clang (GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.29))] on macosx IN: scratchpad --- Data stack: 1 IN: scratchpad --- Data stack: 1 2 IN: scratchpad --- Data stack: 1 2 3 IN: scratchpad
- 246 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 16:49:11 ID:1E1+DBtw.net]
- >>233
約数が3個な数を列挙ってこと? 4の約数は1,2,4の3個だけど 6の約数は1,2,3,6の4個だよ
- 247 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 17:02:16.44 ID:hUZCfnLs.net]
- factorみりゃわかんだろ……
素因数の数だっつーの
- 248 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 18:01:04.84 ID:10jfhd7e.net]
- 素因数の数が3?
- 249 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 18:12:47.35 ID:ivhCTlPt.net]
- こんな具合だろ
seq 100 | ~/bin/factorization.pl| awk -F, "NF==2" | ~/bin/align.pl "=" 4 2,2 6 2,3 9 3,3 10 2,5 14 2,7 ...... 9995 5,1999 9997 13,769 9998 2,4999
- 250 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 19:33:15.23 ID:ReYSFEXH.net]
- >>224
とりあえず7個を除いて出来た ここからが長いのかな?
- 251 名前: mailto:sage [2019/12/11(水) 19:46:53.70 ID:6E3wj7zP.net]
- >>243
そうそう、それに 8 の約数は 1, 2, 4, 8 の 4 個だけれども、これは >>197 のいう半素数ではないんですよね >>233 は間違っていますね
- 252 名前:デフォルトの名無しさん [2019/12/11(水) 20:44:53.42 ID:WjX/lCwK.net]
- QZがそういうなら合ってるんじゃないの?
- 253 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 20:51:31.74 ID:7CYZ1E2N.net]
- 反面教師?
- 254 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 20:54:12.94 ID:7CYZ1E2N.net]
- お題
1兆以下の半素数の個数を求めよ これだとスクリプト系は無理かな?
- 255 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 21:07:14.36 ID:ivhCTlPt.net]
- 素数判定で書いた
long long int のC言語でも100億ぐらいを上限でサポートしてる 100億以上の判定は遅くてより優れた判定アルゴリズムが必要だからだ 推定:C系、優れた判定、現代スペックのPCが必要
- 256 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 21:11:52.35 ID:7CYZ1E2N.net]
- 素数判定する必要は無いよ
- 257 名前: mailto:sage [2019/12/11(水) 22:08:07.74 ID:6E3wj7zP.net]
- >>252
>long long int のC言語でも100億ぐらいを上限でサポートしてる 極めて不正確ですよ C99 後は uint64_t の最大値は 1844'6744'0737'0955'1615=約 1844 京ですね それに実際に割ってみる方法以外には素数判定があるとでも?そんなものは存在しませんね
- 258 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 22:15:54.42 ID:10jfhd7e.net]
- 何年も前に素数の数を数え時は
シングルスレッドのコードで 5000億までで1時間弱 だから>>251もそのくらいで求まるはず
- 259 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 22:46:17.34 ID:10jfhd7e.net]
- >>254
詳しそうなので>>251をよろしく!
- 260 名前:デフォルトの名無しさん mailto:sage [2019/12/11(水) 23:52:51.14 ID:VagVWTF0.net]
- 知り合いから、「子供の宿題なんだけど解けない」と言われた。
「正方形13枚と正三角形を何枚か組み
- 261 名前:合わせて、凸多面体を作るとき、その頂点数は A 個または B 個である。ただし一つの頂点には同じ枚数の面が集まっているものとし、A < B とする。」
途中経過を適宜表記しつつ解くプログラムを! [] - [ここ壊れてます]
- 262 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 00:28:15.32 ID:UvCIGzud.net]
- A=19
B=38
- 263 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 00:32:27.86 ID:UvCIGzud.net]
- >>247
3乗して64bitに収まる範囲全て調べたけど 7個から減らなかった
- 264 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 00:35:14.01 ID:UvCIGzud.net]
- 7個になるまで9秒
3乗して64bitに収まる範囲検索2031秒
- 265 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 00:42:16.14 ID:UvCIGzud.net]
- >>257
プログラミングの宿題じゃないはずなので 解き方は他の板で聞いて
- 266 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 00:44:42.94 ID:UvCIGzud.net]
- k=30, 33, 42, 52, 74, 75, 84
の時がわからん
- 267 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 06:06:40.97 ID:wmbGd8tm.net]
- >>254
f(x) = 1 if x is prime f(x) = 0 otherwise なる f: R -> R が存在しないってなんで言い切れんの? 頭悪すぎ
- 268 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 07:32:31.88 ID:UvCIGzud.net]
- >>254も>>263も頭悪すぎだ
- 269 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 07:40:34.14 ID:UvCIGzud.net]
- >>252
素数判定は不要 >>254 uint64_tの上限じゃなくて素数判定可能な範囲 また、実際に割ってみる以外の方法も色々と存在する >>263 fは存在する あなたが書いた通りの定義そのままをfとすれば良い fの存在と素数判定の方法が存在するかどうかは無関係
- 270 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 07:48:51.75 ID:wmbGd8tm.net]
- >>265
お前も馬鹿だな 簡単な関数で f が定義できるならそれはそのまま簡単な計算で素数判定ができることに他ならない こちらはそんな方法が存在するといっているわけではなく、無配慮にそんなものは存在しないと一刀両断する数学的リテラシーの無さを指摘しているだけなんだが
- 271 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 08:00:21.80 ID:UvCIGzud.net]
- >>263
「簡単な関数でfが定義できる」 非常に重要な言葉を後付けだし これが最初からあったとしても、 単に簡単に素数判定可能可能を言い換えただけの 何の意味もないレス リテラシーの無さの指摘の方法が頭が悪い
- 272 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 08:08:21.73 ID:UvCIGzud.net]
- 現代の技術で言えば
特殊な形であれば高速に判定する方法はある 特殊な形でなければ高速に判定する方法は見つかっていない 実際に割ってみる以外の判別方法は存在する
- 273 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 08:25:56.28 ID:UvCIGzud.net]
- なんでNやZじゃなくてRにしたのか気になる
- 274 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 12:56:52.27 ID:wmbGd8tm.net]
- 文脈無視して揚げ足取ってて草
こいつ関数は全射しか存在しないとでも思ってんのか
- 275 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 14:55:31.47 ID:2PtCb74v.net]
- 単純な疑問だよ
なんかこだわりとか深い意味とかあるのかと 「実数が素である」とか書かれると、 素数じゃない別の意味を指してると思うわけで 揚げ足取られたと思ったってことは ミスったと思ったんだよね?
- 276 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 15:35:29.90 ID:zRSUYply.net]
- いつもの連投アスペ君じゃん
相手すんなよ
- 277 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 17:58:27.01 ID:2C/x7O5N.net]
- 論破されて捨て台詞
の典型でした
- 278 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:19:15.31 ID:RcQND7/k.net]
- 5chリテラシーが低いやつもだいぶ減ってはきてるが
このスレはちょいちょい出てくるよなぁ
- 279 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 18:27:18.35 ID:cffvEFbc.net]
- >>263を書いておいて良くいうよ
- 280 名前:デフォルトの名無しさん mailto:age [2019/12/12(木) 18:39:51.55 ID:JPTMcftT.net]
- 論破を禁止します
- 281 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 19:05:41.21 ID:f2lx0DlC.net]
- まーたロンパンジーが湧いてんのかよ
- 282 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 19:12:35.43 ID:cffvEFbc.net]
- リテラシー君
よほど悔しかったのかな?
- 283 名前: mailto:sage [2019/12/12(木) 19:15:24.80 ID:bwSkQtN1.net]
- >>256
単に上限値を増やしただけのお題なんて糞だと思います
- 284 名前: mailto:sage [2019/12/12(木) 19:17:30.13 ID:bwSkQtN1.net]
- >>265
>また、実際に割ってみる以外の方法も色々と存在する 私の初等的な教科書にはウィルソンの定理の証明が載っていました、>>254 はちょっと勇み足でしたね >>266 >無配慮にそんなものは存在しないと一刀両断する数学的リテラシーの無さ まあ、認めましょう
- 285 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 19:18:20.83 ID:cffvEFbc.net]
- >>279
そう思うってことは上限値以外の差がわからんて事だね 決定的な違いがある
- 286 名前:デフォルトの名無しさん [2019/12/12(木) 20:55:40.30 ID:uIjgN9ep.net]
- お題:
(A) 階乗の下z桁がすべて0となるような最小の自然数を、z = 1, 12, 123, 1234, 12345, 123456, 1234567, 12345678, 123456789の各場合について求めよ。存在しないときは そう表示せよ。 (B) (A)の「下z桁がすべて0となる」という条件を「0である桁がz個となる」に置き換えて解け。 (A)はちょっと考えれば簡単に解ける。(B)はどうか知らない。多桁整数計算ができるJuliaでは z = 12345までは力任せでも求められたが。
- 287 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 21:21:19.99 ID:qa03h3dy.net]
- 5で割っていく感じだから
整数無視して無限に割ると おおまかに4で割った感じの数0が並ぶ 126! は4で割って31ぐらい
- 288 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 22:14:34.83 ID:WrPVO4K2.net]
- 連投論破野郎が論破されてて草
- 289 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 23:15:10.76 ID:UvCIGzud.net]
- (A)だけ C++
https://ideone.com/LTC90E
- 290 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 23:18:50.66 ID:UvCIGzud.net]
- (B)は実際に下限から順番に計算していかないとダメじゃないか?
- 291 名前:デフォルトの名無しさん mailto:sage [2019/12/12(木) 23:52:01.98 ID:UvCIGzud.net]
- n ! のゼロの個数は大雑把にはこのくらい
log_10(n !) / 10 + n * 9 / 40 逆算すれば大体の値はわかる でも最小値だから正確に求めるのには使えない
- 292 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 18:36:38.11 ID:0Lb/VhZx.net]
- [お題]
今月(2019/12)の13日は金曜日。 開始年月と終了年月が与えられる。年は西暦、年月区切りは"/"。 開始年月一日から終了年月末日の間で"13日の金曜日"は何回あるか。 現在のグレゴリオ歴ルールで、終了年月末日まで変わらないとする。 制約: 1970 <= 年 <= 300億, 1 <= 月 <= 12, 開始年月 <= 終了年月 1) 2019/1 2019/12 --> 2 // 今年は9月と12月が該当 2) 1980/1 2012/12 --> 57 3) 213456/8 453212/4 --> 412380 4) 2000/1 2399/12 -->? 5) 2000/11 2800/9 -->? 6) 123456789/11 7301177081/10 -->? 7) 1970/1 30000000000/12 --> 51599996613 ※数十万年程度だと力技だけで回っちゃうので、難易度調整で300億に。 wikiの"グレゴリオ歴#暦法" https://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AC%E3%82%B4%E3%83%AA%E3%82%AA%E6%9A%A6#%E6%9A%A6%E6%B3%95
- 293 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 20:06:08.48 ID:KAf60mjk.net]
- 300億にしても年の曜日は14パターンしか無いのであっという間に解ける気が…
曜日は400年周期だから400年分求めればあとは割り算するだけかな?
- 294 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 20:15:02.20 ID:QuzLYYNu.net]
- C++
https://ideone.com/33NYDY
- 295 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 20:16:51.71 ID:QuzLYYNu.net]
- >>289
今日や
- 296 名前:らないとダメだよ []
- [ここ壊れてます]
- 297 名前:デフォルトの名無しさん [2019/12/13(金) 20:32:32.43 ID:7JZ8Vcg3.net]
- >>288
ずるいやり方だが、取り敢えずPowerShellに 1..12 |? {([DateTime]"2000/$_/13").DayOfWeek -eq "Friday"} 1..12 |? {([DateTime]"2400/$_/13").DayOfWeek -eq "Friday"} と打ち込んでみると、 10 10 と表示され、2000年と2400年の13日の金曜日は10月で一致する。 これと閏年調整のパターンが400年周期であることを組み合わせると、 13日の金曜日の出現パターンも400年周期になることが分かる。 だから、400年分の表を作ってしまえば、遅いPowerShellでも余裕で解ける。 https://ideone.com/oV7JFk --- 実行結果 --- 2019/1 2019/12 -> 2 1980/1 2012/12 -> 57 213456/8 453212/4 -> 412380 2000/1 2399/12 -> 688 2000/11 2800/9 -> 1375 123456789/11 7301177081/10 -> 12345678901 1970/1 30000000000/12 -> 51599996613
- 298 名前:デフォルトの名無しさん [2019/12/13(金) 20:57:37.29 ID:7JZ8Vcg3.net]
- >>285
正解。例によってRで簡潔に書いた解答例: https://ideone.com/RhEtiC >>287 やっぱり無理か。ちなみに、Juliaでz = 12345まで力任せで求めるプログラム https://ideone.com/iqMYLa --- 実行結果 --- 階乗の0である桁が1個になる最小値は5です。 階乗の0である桁が12個になる最小値は37です。 階乗の0である桁が123個になる最小値は299です。 階乗の0である桁が1234個になる最小値は2414です。 階乗の0である桁が12345個になる最小値は20177です。
- 299 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 21:27:38.91 ID:QuzLYYNu.net]
- >>293
>>287の式に20177を入れると12349.7 かなりいい線行ってる
- 300 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 22:22:01.90 ID:QuzLYYNu.net]
- 123456個は存在しない
- 301 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 23:21:15.30 ID:QuzLYYNu.net]
- 123457桁になる 30484!
から 下位に0が123457個続く 493840! までの間に存在しない事を示せば 存在しない証明になりますが もっと範囲を絞った証明は出来ないですかねえ 確率的には>>287の付近だけ調べれば良いんですが...
- 302 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 23:47:17.94 ID:r78PztnN.net]
- 全部調べる感じでぶん回してるけど1234567までが長いお(´・ω・`) (123456は>>295の言う通り出なかった)
1時間ぶん回して900000!まで行ったが…
- 303 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 23:49:02.36 ID:r2S5lo/C.net]
- 数学でワープできる分手計算のほうが早い
- 304 名前:デフォルトの名無しさん mailto:sage [2019/12/13(金) 23:49:38.96 ID:QuzLYYNu.net]
- kwsk
|

|