#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef pair P; #define MOD 1000000007 // 10^9 + 7 #define INF 1000000000 // 10^9 #define LLINF 1LL<<60 bool dp[101][20001]; // dp[i][j] : i回目の操作で(右の重さ-左の重さ) = j-10000 とできるかどうか int W[101]; int main() { cin.tie(0); ios::sync_with_stdio(false); int N; cin >> N; for (int i = 1; i <= N; i++) cin >> W[i]; dp[0][10000] = true; for (int i = 0; i < N; i++) { for (int j = 0; j <= 20000; j++) { if (dp[i][j]) { if (abs(j + W[i + 1]) <= 10000) dp[i + 1][j + W[i + 1]] = true; if (abs(j - W[i + 1]) <= 10000) dp[i + 1][j - W[i + 1]] = true; } } } if (dp[N][10000]) cout << "possible" << endl; else cout << "impossible" << endl; return 0; }