#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; long long inf=1000000000; int main() { int n; cin>>n; vector p(n); for(int i=0;i>p[i]; vector > dp(1<(1000,inf)); dp[0][0]=0; for(int bit=0;bit<(1<",bit,i,dp[bit][i]); dp[next][(i+p[j])%1000]=min(dp[next][(i+p[j])%1000],dp[bit][i]+max(0LL,p[j]-i)); //printf("(%lld,%lld)=%lld\n",next,(i+p[j])%1000,dp[next][(i+p[j])%1000]); } } } long long res=dp[(1<