プログラミングのお題スレ Part22 (854レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
241(1): 9 [sage] 2024/02/16(金) 02:56:10.41 ID:7jtCAGu+(1/2) AAS
>>234234(27): デフォルトの名無しさん [sage] 2024/02/14(水) 09:32:06.19 ID:JjlrBdlD(1) AAS
お題:数値が入力されるのでその数値に最も近い回分数を出力せよ
回分数とは回分になっている数(負数含まず)のことである
最も近い回分数が2つある場合は2つとも出力せよ
入力 0
出力 0
入力 17
出力 22
入力 100
出力 99
出力 101
Perl5
for $n (0,17,100,123459321) {
my %a;
for (0..$n) {
$i = $n - $_;
$a{$i} = $i if 0 <= $i and $i =~ /^((\d)(?1)\2|\d?)$/;
$j = $n + $_;
$a{$j} = $j if $j =~ /^((\d)(?1)\2|\d?)$/;
last if keys %a;
}
@a = keys %a;
print "$n -> @a\n";
}
※見やすくするためインデントを全角スペースに置換してあります。
実行結果
$ perl 22_234_palindromic_number.pl
0 -> 0
17 -> 22
100 -> 99 101
123459321 -> 123464321 123454321
242: 9 [sage] 2024/02/16(金) 03:13:10.80 ID:7jtCAGu+(2/2) AAS
>>241
last if keys %a;
}
@a = keys %a;
は
last if @a = keys %a;
}
とコンパクトに書けるんだった、まぁいいや
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s