結果

問題 No.4 おもりと天秤
ユーザー togaerrortogaerror
提出日時 2015-04-21 23:47:52
言語 Perl
(5.38.2)
結果
AC  
実行時間 162 ms / 5,000 ms
コード長 868 bytes
コンパイル時間 365 ms
コンパイル使用メモリ 6,812 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-26 09:10:53
合計ジャッジ時間 2,917 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 14 ms
6,812 KB
testcase_01 AC 6 ms
6,940 KB
testcase_02 AC 30 ms
6,940 KB
testcase_03 AC 22 ms
6,940 KB
testcase_04 AC 30 ms
6,944 KB
testcase_05 AC 159 ms
6,940 KB
testcase_06 AC 12 ms
6,944 KB
testcase_07 AC 160 ms
6,944 KB
testcase_08 AC 6 ms
6,944 KB
testcase_09 AC 142 ms
6,940 KB
testcase_10 AC 162 ms
6,940 KB
testcase_11 AC 18 ms
6,944 KB
testcase_12 AC 13 ms
6,940 KB
testcase_13 AC 13 ms
6,940 KB
testcase_14 AC 14 ms
6,944 KB
testcase_15 AC 13 ms
6,944 KB
testcase_16 AC 20 ms
6,940 KB
testcase_17 AC 18 ms
6,944 KB
testcase_18 AC 150 ms
6,940 KB
testcase_19 AC 157 ms
6,940 KB
testcase_20 AC 157 ms
6,940 KB
testcase_21 AC 157 ms
6,940 KB
testcase_22 AC 160 ms
6,944 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Main.pl syntax OK

ソースコード

diff #

#!/usr/bin/evn perl

use strict;
use warnings;

my $n = <>;
my $str = <>;
chomp $str;
my @array = split / /, $str;

my @first;
my @second;

my $res = 0;
for(my $h = 0; $h < $n; $h++) {
	$res += $array[$h];
}
$res /= 2;
if($res != int $res) {
	print "impossible\n";
	exit;
}

#配列の初期化
for(my $i = 0; $i < 100**2; $i++) {
	$first[$i] = 0;
	$second[$i] = 0;
}

$first[0] = 1;

#入力した数字だけ調べる
for(my $i = 0; $i < $n; $i++) {
	#0..100で1があるところを調べる
	for(my $j = 0; $j < 100**2; $j++) {
		#もし1があった時
		if($first[$j] == 1) {
			$second[$array[$i] + $j] = 1;
		}
	}
	#firstとsecondを合わせて、firstに格納
	for(my $k = 0; $k < 100**2; $k++) {
		if(($first[$k] == 1)or($second[$k] == 1)) {
			$first[$k] = 1;
		}
	}
}

if($first[$res] == 1) {
	print "possible\n";
} else {
	print "impossible\n";
}

exit;
0