結果
問題 | No.873 バイナリ、ヤバいなり!w |
ユーザー |
![]() |
提出日時 | 2019-09-02 19:03:55 |
言語 | Perl (5.40.0) |
結果 |
WA
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 569 bytes |
コンパイル時間 | 501 ms |
コンパイル使用メモリ | 7,072 KB |
実行使用メモリ | 19,456 KB |
最終ジャッジ日時 | 2024-06-24 06:38:12 |
合計ジャッジ時間 | 2,445 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 WA * 1 |
コンパイルメッセージ
Name "main::y" used only once: possible typo at Main.pl line 25. Main.pl syntax OK
ソースコード
# almost beta-ishoku of# https://yukicoder.me/submissions/374293 by nadare$N=<>;@DP = (999)x($N+1);$DP[0] = 0;$r=int sqrt$N;for$i(0..$N-$r*$r){for$j(1..sqrt$N-$i){$f=$j*$j;$DP[$i+$f]=$DP[$i]+$j if $DP[$i+$f]>$DP[$i]+$j;}}for(0,1){$DP[$N]=$DP[$N-$r*$r]+$r if $DP[$N]>$DP[$N-$r*$r]+$r;--$r;}$x = $N;$j=1;while($x){$f=$j*$j;if($DP[$x] == $DP[$x-$f] + $j){$y=$j;if($j%2){print"01"x($j/2),0;}else{push@E,$j;}$x -= $f;}else{++$j;}}while($e=pop@E){print"01"x($e/2);if($e=shift@E){print"10"x($e/2);}}