#include using namespace std; #define REP(i,first,last) for (int i=first;i y ? x : y) #define MIN(x,y) (x < y ? x : y) #define prints(str) cout << str << " "; #define printn(str) cout << str << endl; int main(){ int N; cin >> N; vector w_list(N); bitset<10001> dp; int total = 0; REP(i,0,N){ cin >> w_list[i]; total += w_list[i]; } if (total & 1 == 1) { printn("impossible"); return 0; } int half = total >> 1; dp[0] = 1; for (auto w: w_list) { dp |= dp << w; if (dp[half]) { printn("possible"); return 0; } } printn("impossible"); }