結果
問題 |
No.4 おもりと天秤
|
ユーザー |
![]() |
提出日時 | 2015-04-21 17:56:51 |
言語 | Perl (5.40.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 814 bytes |
コンパイル時間 | 82 ms |
コンパイル使用メモリ | 6,944 KB |
実行使用メモリ | 6,940 KB |
最終ジャッジ日時 | 2024-07-04 19:07:51 |
合計ジャッジ時間 | 2,804 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 18 WA * 5 |
コンパイルメッセージ
Main.pl syntax OK
ソースコード
#!/usr/bin/env perl use strict; use warnings; my $n = <>; my $str = <>; chomp $str; my @array = split / /, $str; my $ans = 0; @array = sort {$a <=> $b} @array; for(my $i = 0; $i < $n; $i++) { $ans += $array[$i]; } $ans /= 2; if($ans != int $ans) { print "impossible\n"; exit; } my @f; my @s; for(my $i = 0; $i < 100**2; $i++) { $f[$i] = 0; $s[$i] = 0; } for(my $i = 0; $i < $n; $i++) { $f[$array[$i]] = 1; } for(my $i = 0; $i < $n; $i++) { for(my $j = 0; $j < 100**2; $j++) { if(($array[$i] + $j < 100**2)and($f[$j] == 1)) { $s[$j + $i] = 1; } } for(my $k = 0; $k < 100**2; $k++) { if(($f[$k] == 1)or($s[$k] == 1)) { $f[$k] = 1; } } } #for(my $i = 0; $i < 10; $i++) { # print "$s[$i]" ; #} #print "\n"; if($s[$ans] == 1) { print "possible\n"; } else { print "impossible\n"; } exit;