プログラミングのお題スレ Part22 (854レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
33: デフォルトの名無しさん [] 2023/08/11(金) 14:03:26.02 ID:v1edpQDw(1) AAS
doubt
203: デフォルトの名無しさん [sage] 2024/01/23(火) 22:56:23.02 ID:8rvcqFQo(2/2) AAS
>>187187(17): デフォルトの名無しさん [] 2024/01/16(火) 00:33:05.98 ID:n8j0XaXx(1) AAS
お題:時刻の文字列が与えられる。その時刻から1秒後の時刻を出力せよ。
例
入力:00:00:00
出力:00:00:01
入力:23:59:59
出力:00:00:00
pascal
外部リンク:ideone.com
program ideone;
Uses sysutils, dateutils;
function f(hms : string) : string;
begin
f := TimeToStr(IncSecond(StrToTime(hms), 1))
end;
begin
writeln(f('00:00:00'));
writeln(f('23:59:59'));
end.
264(1): ◆QZaw55cn4c [] 2024/02/20(火) 20:48:17.02 ID:RtAsHDVN(1) AAS
>>262262(2): デフォルトの名無しさん [sage] 2024/02/20(火) 12:59:46.62 ID:qzcGLGiS(1) AAS
しらみ潰しとは例えば1から順番に見つかるまで全てを試していく最悪な方法を指す
今回の場合だと与えた数から順番に見つかるまで±1を続けて全てを試していって探すプログラムが該当する
私は >>248だけれども、解法としてはそれしかないと思いますね
408: 警備員[Lv.12] [] 2024/08/22(木) 08:04:39.02 ID:dwyU9o+h(2/2) AAS
>>407407(1): 警備員[Lv.12] [] 2024/08/22(木) 08:01:35.77 ID:dwyU9o+h(1/2) AAS
>>404
bash のコマンドラインから expr コマンドと date コマンドを利用して次のようにして計算した。
実際に日数が経過後に1月1日になっているかの確認もした。
$ expr $( date -d '2024/12/31' +%j ) - $( date +%j ) + 1
132
$ date -d 'now +132 days'
2025年 1月 1日 水曜日 07:58:54 JST
$
をちょっと改良
今年に限定しないやりかた。
$ expr $( date -d $(date +%Y)'/12/31' +%j ) - $( date +%j ) + 1
132
$
482: デフォルトの名無しさん [sage] 2025/01/13(月) 20:43:35.02 ID:zlmvetys(1) AAS
>>438438(10): デフォルトの名無しさん [sage] 2024/10/11(金) 05:53:27.29 ID:EzY86rdr(1/2) AAS
お題:文字列の中で1つ以上連続している空白をすべて空白4つに置換せよ。ただし正規表現は使ってはならない。
例:
"abc def ghi" -> "abc def ghi"
java
外部リンク:ideone.com
495: デフォルトの名無しさん [sage] 2025/01/25(土) 03:04:24.02 ID:Z97MpHAu(1) AAS
どんまい
694: 693 [] 2025/03/19(水) 22:42:43.02 ID:P0JLFopv(2/2) AAS
aは2以上の整数とする。
に訂正します。
744(1): デフォルトの名無しさん [sage] 2025/04/09(水) 23:43:56.02 ID:R3DmBa+t(2/3) AAS
前者はどっち?
アルゴリズムが違うのかちょっと見てみる
760: デフォルトの名無しさん [sage] 2025/04/17(木) 00:29:06.02 ID:dz0qzhSq(2/3) AAS
>>7412000万個すべてを素因数分解する方法とは逆に、
2025以下の素数の組み合わせを調べていく方法。
そのうち和が2025になる組み合わせの積が各解となる。
それを効率よく求めるために2025(+1)個のベクタのベクタpを用意している。
つまり和がsumとなる時の積をp[sum]に記録していく。
効率面からの仮の初期値p[0]に1を入れて、各素数iについて降順に、
ベクタp[j]にxがある時、ベクタp[i+j]にx*iをpushしていく。
ここでjの上限は 2025 - i、処理するxの上限は 2000万 / i の枝刈りができる。
最終的にベクタp[2025]の一覧が解となる。
2025個のベクタを用いることが長所および短所になっている。
この改良版>>754では、最後の素数2だけ特別扱いすることで倍速にしている。
771(22): デフォルトの名無しさん [sage] 2025/07/25(金) 12:30:11.02 ID:CjDQVF2B(1) AAS
【問題】
整数のリストが与えられたとき、そのリストを昇順に安定ソートした時の各要素のインデクス(0開始)を対応させたリストを作成せよ
【例】
入力: 1 100 10 10000 1000
出力: 0 2 1 4 3
入力: 3 1 4 1 5 9 2
出力: 3 0 4 1 5 6 2
入力: 0 1 0 1 0 1 0 1
出力: 0 4 1 5 2 6 3 7
実際に必要になって実装したけどスマートな方法があったら知りたい
818: デフォルトの名無しさん [sage] 2025/08/23(土) 21:01:55.02 ID:gxRFdG35(1) AAS
>>799799(20): デフォルトの名無しさん [sage] 2025/08/16(土) 01:44:59.97 ID:VU+jlz0U(1/2) AAS
【問題A】
1~9を1つずつ使用して表される9桁の数Anは全部で9!(=362880)個存在する。
整数n(1≦n≦362880)が与えられたとき、n番目に小さいAnを求めよ。
(例)
1 → 123456789
2 → 123456798
3 → 123456879
123456 → 416589732
234567 → 684753219
362880 → 987654321
【問題B】
1~4を3つずつ使用して表される12桁の数Bnは全部で12!/(3!)^4(=369600)個存在する。
整数n(1≦n≦369600)が与えられたとき、n番目に小さいBnを求めよ。
(例)
1 → 111222333444
2 → 111222334344
3 → 111222334434
123456 → 222331434114
234567 → 324424331112
369600 → 444333222111
※求める数値は文字列または各桁の数の配列による表現も可能とする(123⇔"123"⇔[1,2,3])
java
外部リンク:ideone.com
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.045s