結果
問題 |
No.45 回転寿司
|
ユーザー |
![]() |
提出日時 | 2017-01-26 13:49:07 |
言語 | Perl (5.40.0) |
結果 |
AC
|
実行時間 | 470 ms / 5,000 ms |
コード長 | 515 bytes |
コンパイル時間 | 492 ms |
コンパイル使用メモリ | 5,504 KB |
実行使用メモリ | 6,016 KB |
最終ジャッジ日時 | 2024-12-27 15:59:41 |
合計ジャッジ時間 | 6,079 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 30 |
コンパイルメッセージ
Main.pl syntax OK
ソースコード
use strict; use warnings; my $num = <STDIN>; my %sushi; for(reverse split(' ', <STDIN>)){ $sushi{$num} = $_; $num--; } my %p = (-1 => 0); my %n = %p; for my $i (sort {$a <=> $b} keys %sushi) { for my $j (keys %p) { if($i - $j != 1){ if(!defined($n{$i}) or (defined($n{$i}) and $n{$i} < $p{$j} + $sushi{$i})){ $n{$i} = $p{$j} + $sushi{$i}; } } } %p = (); map {$p{$_} = $n{$_}}(sort {$n{$b} <=> $n{$a}} keys %n)[0..1]; } print $p{(sort {$p{$b} <=> $p{$a}} keys %p)[0]};