結果
問題 | No.5002 stick xor |
ユーザー |
![]() |
提出日時 | 2018-05-26 00:31:48 |
言語 | Perl (5.40.0) |
結果 |
AC
|
実行時間 | 904 ms / 1,000 ms |
コード長 | 733 bytes |
コンパイル時間 | 28,494 ms |
実行使用メモリ | 3,384 KB |
スコア | 39,737 |
最終ジャッジ日時 | 2018-05-26 00:32:18 |
ジャッジサーバーID (参考情報) |
judge8 / |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 32 |
コンパイルメッセージ
Name "main::K" used only once: possible typo at Main.pl line 2. Main.pl syntax OK
ソースコード
$,=$";$\=$/;($N,$K)=glob<>;@s=sort{$b-$a}@L=glob<>;@A=map[/./g],map~~<>,1..$N;for$l(@s){$C=-1;for$y(0..$N-1){$c=0;for$x(0..$l-1){$c+=$A[$y][$x]}if($c>$C){$C=$c;$Y=$y;$X=$l-1}for$x($l..$N-1){$c+=$A[$y][$x]-$A[$y][$x-$l];if($c>$C){$C=$c;$Y=$y;$X=$x}}}$D=-1;for$x(0..$N-1){$c=0;for$y(0..$l-1){$c+=$A[$y][$x]}if($c>$D){$D=$c;$YY=$l-1;$XX=$x}for$y($l..$N-1){$c+=$A[$y][$x]-$A[$y-$l][$x];if($c>$D){$D=$c;$YY=$y;$XX=$x}}}if($C>$D){push@$l,[$Y+1,$X-$l+2,$Y+1,$X+1];for$x($X-$l+1..$X){$A[$Y][$x]^=1}}else{push@$l,[$YY-$l+2,$XX+1,$YY+1,$XX+1];for$y($YY-$l+1..$YY){$A[$y][$XX]^=1}}}print@{pop@$_}for@L