#include #define REP(i,n) for(int i=0,i##_len=(n);i>N>>T; vector> dp(N+1,vector(T+1,0)); vector A(N); REP(i, N) cin >> A[i]; dp[N][T]=1; for(int i=N-1;i>=0;--i) REP(j,T+1){ if(j+A[i]<=T&&dp[i+1][j+A[i]]) dp[i][j]=1; if(j*A[i]<=T&&dp[i+1][j*A[i]]) dp[i][j]=1; } int j=A[0]; string ans; rep(i,1,N){ if(j+A[i]<=T&&dp[i+1][j+A[i]]){ j+=A[i]; cout<<'+'; } else if(dp[i+1][j*A[i]]){ j*=A[i]; cout<<'*'; } } cout<