using System; using System.Collections.Generic; using System.Linq; class P { static int[] w; static bool[] dp; static bool dfs(int i, int sum, int goal) { if (dp[i]) { return dp[i]; } bool ret = false; if (goal == sum) { ret = true; } else if (i == 0) { ret = false; } else { ret = dfs(i - 1, sum, goal) || dfs(i - 1, sum + w[i], goal); } return dp[i] = ret; } static void Main(string[] _) { int n = int.Parse(Console.ReadLine()); w = new int[n]; dp = new bool[n]; _ = Console.ReadLine().Split(' '); int sum = 0; string ans = ""; for (int i = 0; i < n; i++) { w[i] = int.Parse(_[i]); sum += w[i]; } if (sum % 2 == 0) { sum /= 2; Array.Sort(w); if (sum > w.Last()) { ans = dfs(n - 1, 0, sum) ? "possible" : "impossible"; } else { ans = "impossible"; } } else { ans = "impossible"; } Console.WriteLine(ans); } }