プログラミングのお題スレ Part18
(ID:wXdm0x1Eのみ表示中)
戻る
721デフォルトの名無しさん

AAS

NG

>>720
うまいやり方だな。それには気付かなかった。

2020/10/17(土)19:11:03.54(wXdm0x1E.net)


722デフォルトの名無しさん

AAS

NG

>>705
Kotlin script

2進数文字列に変換してから 0 を区切り文字にして分割してその中の一番長い文字列の長さを出すというやり方。

fun max1(n: Int) = n.toString(2).split('0').map { it.length }.max()

println(max1(20201016))

これで 5 が出る。

同じやり方を perl5 で(特にモジュール使わずに)やるとこんな感じ。

perl -e '$n=20201016; $m = (sort { $b <=> $a } map { length($_) } (split /0+/, sprintf("%b", $n)))[0]; print "$m\n"'

同じく5が出る。

2020/10/17(土)19:29:10.40(wXdm0x1E.net)


戻る
ver.151005sp