Memory: 2612K Time: 63MSLanguage: G++ Fault: 0 #include<math.h> #include<stdio.h> //将数分为左右两边,然后用选择原则把一个数出现的情况平方 //即左边出现的情况乘以右边同时出现这个数的情况即可 int poss[6][100020]; int main() { int N; scanf("%d",&N); poss[0][0] = 1; for(int i = 0; i < N/2; i++) for(int j = 0; j < 10; j++) for(int k = 0; k < 100000; k++) poss[i+1][k+j] += poss[i][k]; long long res(0); for(int i = 0; i < 100000; i++) res += poss[N/2][i]*poss[N/2][i]; printf("%I64d/n",res); return 0; }