#pragma GCC target("avx2") #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") #include using namespace std; int n,r[40]; bitset<32000001> dp[41];//16000001だと嘘っぽい。それとも嘘じゃない? int main(){ cin>>n; for(int i=0;i>r[i]; } for(int i=0;i(n-i))continue; if(abs(j-20)>i)continue; dp[j-1]|=dp[j]>>r[i]; } for(int j=40;j--;){ if(abs(j-20)>(n-i))continue; if(abs(j-20)>i)continue; dp[j+1]|=dp[j]<