#include #include #include #define rep(i,a,b) for(i=a;i*(int*)b){ return 1; }else if(*(int*)a <*(int*)b){ return -1; }else{ return 0; } } int main(void){//貪欲でも行けそう int d,i,j,kk=0,ma,mb,p; int mini=1000,k=0,qi=0,qj=0,n; int s=0,h=0; int a[110],b[1010],c[5010],w=0; int heavy=1e9,dp[2][10010]; scanf("%d",&n); rep(i,1,n+1){ scanf("%d",&a[i]); kk+=a[i]; } if(kk%2==1){ printf("impossible\n"); return 0; } rep(i,0,10001){ dp[0][i]=heavy; } dp[0][0]=0; rep(i,1,n){ rep(j,0,10001){ if(j-a[i]>=0){ dp[1][j]=fmin(dp[0][j-a[i]]+1,dp[0][j]); }else{ dp[1][j]=dp[0][j]; } } rep(j,0,10001){ dp[0][j]=dp[1][j]; } } if(dp[0][kk/2]!=heavy){ printf("possible\n"); }else{ printf("impossible\n"); } }