1 solutions
-
0
C++ :
#include<iostream> #include<cstdio> #include<cstring> #define ll long long #define N 10000000 + 10 using namespace std; ll n,m,dp[N]; int main() { scanf("%lld",&n); m=(n*(n+1))/2; if(m%2) { cout<<0; return 0; } m/=2; dp[0]=1; for(int i=1;i<=n;i++) for(int j=m;j>=i;j--)//数组压缩 dp[j]+=dp[j-i]; cout<<dp[m]/2;//一定注意最后除以2 return 0; }
- 1
Information
- ID
- 9986
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By