#!/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;