プログラミングのお題スレです。
【出題と回答例】
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/
宿題は宿題スレがあるのでそちらへ。
※前スレ
プログラミングのお題スレ Part21
https://mevius.5ch.net/test/read.cgi/tech/1668333636/
プログラミングのお題スレ Part22
1デフォルトの名無しさん
2023/08/03(木) 13:52:13.20ID:/xW45k0z863862
2025/09/26(金) 21:58:13.14ID:rAOVnJgT >>845 ruby
https://ideone.com/YEGl7C
・実りの無い再帰を省略
・結果を配列で集めず整数で集める
>>845 c++
https://ideone.com/f62fkG
・rubyの移植版
>>845 ocaml
https://ideone.com/cHYmdv
・rubyの移植版
・任意精度整数は昔ながらのnumのBig_int使用
・ZarithのZは確かに速かったけどideoneでは使えずボツ
https://ideone.com/YEGl7C
・実りの無い再帰を省略
・結果を配列で集めず整数で集める
>>845 c++
https://ideone.com/f62fkG
・rubyの移植版
>>845 ocaml
https://ideone.com/cHYmdv
・rubyの移植版
・任意精度整数は昔ながらのnumのBig_int使用
・ZarithのZは確かに速かったけどideoneでは使えずボツ
864デフォルトの名無しさん
2025/10/19(日) 18:23:02.12ID:UPYRyJKx お題
硬貨の種類と金額が与えられます。
硬化の合計がちょうど金額と同じになるように硬貨を選ぶとき、使用枚数の最小値を求めてください。
支払いが不可能なときは-1を出力します。
各硬貨は無制限に使用できます。
額面の大きい硬貨を優先して選ぶ貪欲法が常に最適解を与えるとは限らないことに注意。
入力
硬貨:[1,7,10]
金額:14
出力
使用枚数:2
硬貨の種類と金額が与えられます。
硬化の合計がちょうど金額と同じになるように硬貨を選ぶとき、使用枚数の最小値を求めてください。
支払いが不可能なときは-1を出力します。
各硬貨は無制限に使用できます。
額面の大きい硬貨を優先して選ぶ貪欲法が常に最適解を与えるとは限らないことに注意。
入力
硬貨:[1,7,10]
金額:14
出力
使用枚数:2
865デフォルトの名無しさん
2025/10/19(日) 21:36:07.90ID:1trCfbwI866デフォルトの名無しさん
2025/10/22(水) 21:34:32.83ID:vm0Iby1T867デフォルトの名無しさん
2025/10/26(日) 09:31:44.23ID:Y3+SSpql お題というか、協力してほしい感じなんですが、素因数分解関数をHaskellで書いて色んな数を素因数分解して遊んでいたら確認したい事実に出くわしたので。
31 <- 素数
331 <- 素数
3331 <- 素数
33331 <- 素数
333331 <- 素数
と、3が5個並んで末尾が1の数字までは素数という事が分かりましたが、いかんせん、ノートだと力不足。
それにCとかで書き直したらもっと先まで行けるかも?という事で、この先、どこまで33...31が素数なのかを調べて欲しいのです。
協力お願いします<(_ _)>
一応、Haskellではこんなコードです。
factorization n = f primes n
where primes = 2:(sieve [3,5..])
where sieve (p:xs) = p:(sieve [x | x <- xs, x `mod` p /= 0])
f (p:ps) n | n <= p = [n]
f (p:ps) n | n `mod` p == 0 = p:f (p:ps) (n `div` p)
f (p:ps) n = f ps n
31 <- 素数
331 <- 素数
3331 <- 素数
33331 <- 素数
333331 <- 素数
と、3が5個並んで末尾が1の数字までは素数という事が分かりましたが、いかんせん、ノートだと力不足。
それにCとかで書き直したらもっと先まで行けるかも?という事で、この先、どこまで33...31が素数なのかを調べて欲しいのです。
協力お願いします<(_ _)>
一応、Haskellではこんなコードです。
factorization n = f primes n
where primes = 2:(sieve [3,5..])
where sieve (p:xs) = p:(sieve [x | x <- xs, x `mod` p /= 0])
f (p:ps) n | n <= p = [n]
f (p:ps) n | n `mod` p == 0 = p:f (p:ps) (n `div` p)
f (p:ps) n = f ps n
868デフォルトの名無しさん
2025/10/26(日) 09:50:23.90ID:Y3+SSpql あ、ただの素数判定でも良いです。
ちなみに、66..61の場合は6661までは素数ですが66661は素数じゃなくなりました。
なので、33..31もどこかで素数じゃなくなるのか?それともずっと素数になりそうなのか?って疑問が持ち上がりました。
ちなみに、66..61の場合は6661までは素数ですが66661は素数じゃなくなりました。
なので、33..31もどこかで素数じゃなくなるのか?それともずっと素数になりそうなのか?って疑問が持ち上がりました。
869デフォルトの名無しさん
2025/10/26(日) 10:13:01.91ID:XLS0tlS8 >>867
興を削いですまんが、「33...331は素数か」でググったら、AIが(あまり大きくない桁数で)答えを示してくれた…
興を削いですまんが、「33...331は素数か」でググったら、AIが(あまり大きくない桁数で)答えを示してくれた…
870デフォルトの名無しさん
2025/10/26(日) 10:19:15.38ID:0X7G2IAI871869
2025/10/26(日) 10:21:11.68ID:XLS0tlS8872デフォルトの名無しさん
2025/10/26(日) 17:08:32.87ID:Y3+SSpql >>869-871
いえいえ、ああ、やっぱりずっと素数という訳にはいかないんですね…。
何か素数の秘密に触れるヒントか?と心躍ったけど、そんな訳なかったですね(´・ω・`)
あやうく数学スレで鼻息荒く書き込むところでした。
ありがとうございました<(_ _)>
いえいえ、ああ、やっぱりずっと素数という訳にはいかないんですね…。
何か素数の秘密に触れるヒントか?と心躍ったけど、そんな訳なかったですね(´・ω・`)
あやうく数学スレで鼻息荒く書き込むところでした。
ありがとうございました<(_ _)>
873デフォルトの名無しさん
2025/10/26(日) 17:55:12.41ID:N6SeZsiy 29bitで収まる範囲内
333333331 = 17 × 19607843
これを求められなかったHaskellはすごく遅い?
333333331 = 17 × 19607843
これを求められなかったHaskellはすごく遅い?
874デフォルトの名無しさん
2025/10/26(日) 23:06:07.50ID:Y3+SSpql >>873
速いアルゴリズムに変えたら何とか1分ほどでその数字まで届きました。
(そもそも、>867 のは美しいとか短いとかの枕詞が付くコードですし。33...31に気付かなかったら4桁ぐらいが実用的ならおkだったので)
改良版Haskell
pfactorization = f primes
where primes =2:3:5#primes
where n#x@(m:q:y)=[n|gcd m n<2]++(n+2)#last(x:[m*q:y|q^2-3<n])
というか、それより1桁少ない方が少し時間かかりますね。
19607843 < 33333331 なので、素数比較回数が多いのかと。
速いアルゴリズムに変えたら何とか1分ほどでその数字まで届きました。
(そもそも、>867 のは美しいとか短いとかの枕詞が付くコードですし。33...31に気付かなかったら4桁ぐらいが実用的ならおkだったので)
改良版Haskell
pfactorization = f primes
where primes =2:3:5#primes
where n#x@(m:q:y)=[n|gcd m n<2]++(n+2)#last(x:[m*q:y|q^2-3<n])
というか、それより1桁少ない方が少し時間かかりますね。
19607843 < 33333331 なので、素数比較回数が多いのかと。
875デフォルトの名無しさん
2025/10/26(日) 23:07:37.04ID:Y3+SSpql あ、f の方を忘れた。
f のコードは変更なしです。
f のコードは変更なしです。
876デフォルトの名無しさん
2025/11/07(金) 05:48:17.42ID:ckPLmv2U >>868
cだとこんな感じでいいのかな?
3333333333333331くらいまで一瞬でできる
#include <stdio.h>
int main(void) {
long long d, n;
printf("Enter a number: ");
scanf("%lld", &n);
for (d = 2; d * d <= n; d++) {
if (n % d == 0)
break;
}
if (d * d <= n)
printf("%lld is divisible by %lld\n", n, d);
else
printf("%lld is prime.\n", n);
return 0;
}
cだとこんな感じでいいのかな?
3333333333333331くらいまで一瞬でできる
#include <stdio.h>
int main(void) {
long long d, n;
printf("Enter a number: ");
scanf("%lld", &n);
for (d = 2; d * d <= n; d++) {
if (n % d == 0)
break;
}
if (d * d <= n)
printf("%lld is divisible by %lld\n", n, d);
else
printf("%lld is prime.\n", n);
return 0;
}
877デフォルトの名無しさん
2025/11/25(火) 16:00:02.31ID:COUmbZtB お題:ulp()の実装
Pythonのmath.ulp()に相当する関数の実装
特殊値(非数や無限大や非正規化数)の考慮は任意
引数がゼロの場合はDBL_MINやDBL_TRUE_MINに相当する値を
返すこと(プラットホーム依存)
発展的なお題:
共用体やfrexp()やldexp()を使わずに実装
Pythonのmath.ulp()に相当する関数の実装
特殊値(非数や無限大や非正規化数)の考慮は任意
引数がゼロの場合はDBL_MINやDBL_TRUE_MINに相当する値を
返すこと(プラットホーム依存)
発展的なお題:
共用体やfrexp()やldexp()を使わずに実装
878デフォルトの名無しさん
2025/12/06(土) 16:35:13.06ID:LjhUSqqq お題:ページャーがある。範囲表示に使う配列を出力せよ。現在のページ番号はp,総ページ数はn、切り取る範囲はrとする。
例
p=1, n=10, r=5
[1,2,3,4,5]
p=3, n=10, r=5
[1,2,3,4,5]
p=5, n=10, r=5
[3,4,5,6,7]
p=8, n=10, r=5
[6,7,8,9,10]
p=10, n=10, r=5
[6,7,8,9,10]
例
p=1, n=10, r=5
[1,2,3,4,5]
p=3, n=10, r=5
[1,2,3,4,5]
p=5, n=10, r=5
[3,4,5,6,7]
p=8, n=10, r=5
[6,7,8,9,10]
p=10, n=10, r=5
[6,7,8,9,10]
879デフォルトの名無しさん
2025/12/06(土) 19:35:04.35ID:cqDpuJikレスを投稿する
ニュース
- 【伊東市長選】「きょうは行きたくない」 落選の田久保眞紀 前市長が”取材拒否” 約束の場所に姿を現さず 最後まで誠実さを欠く [ぐれ★]
- 「婚活中の男女の8割以上が婚活疲れ」続ければ続けるほど蟻地獄にハマる必然とは? ★2 [ぐれ★]
- 中国軍機のレーダー照射1週間 駆け引き続く 中国、米のレッドライン模索 日本、米以外の同志国とも連携探る 米は対立から距離置く★3 [ぐれ★]
- フジ、元日夜に『なるほど!ザ・ワールド』6年ぶり復活 MCは有吉弘行&指原莉乃「衝撃的」「ビックリ」予告 [征夷大将軍★]
- 【オーストラリア】シドニー近郊のボンダイビーチで銃撃 16人死亡、首相「ユダヤ教徒標的」 容疑者は50歳の父親と24歳の息子 [ぐれ★]
- ゼレンスキー氏、NATO加盟断念に言及 ドイツで米代表団と [蚤の市★]
- 【画像】高市早苗のファンアート、あまりにもエッチすぎる [834922174]
- 福井から飛んでくるエネルギーが怖い
- ネトウヨラッパー、左翼ラッパーにディス返し 「差別じゃなく区別」「早く実家出ろこどおじ」 [377482965]
- 楽天モバイルって最強じゃね?
- 【悲報】花王、女性用品だけ量を少なくしてることがバレ大炎上中wwwwwwwwwwwwwwwwwwww [802034645]
- 🏡すこふさん、とうだ…w🏡
