3 条题解
-
0
#include<stdio.h>
int main() { int t; scanf("%d", &t); while (t--) { int n; scanf("%d", &n); if (n == 1) { printf("1\n"); } else { long long sum = 1; for (int a = 2; a <= n; a++) { long long ans = 1; if (a % 2 == 0) { for (int b = 1; b <= a; b++) { ans *= b; } sum += ans; } else { for (int b = 1; b <= a; b++) { ans *= (-b); } sum += ans; }
} printf("%lld\n", sum); }
} return 0;
}
-
0
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
while(n--){
int a;
scanf("%d",&a);
if(a==1){
printf("%d\n",a);
}else if(a==2){
printf("%d\n",a+1);
}else if(a>2){
int ax=-1;
long long int sum=2,sam=3,ma=2;
for(int i=3;i<=a;i++){
if(i%2!=0){
ma=i*ma;
sum=ma*ax+sam;
sam=sum;
ax=1;
}else{
ma=i*ma;
sum=ma*ax+sam;
sam=sum;
ax=-1;
}
}
printf("%lld\n",sum);
}
}
return 0;
}
- 1
信息
- ID
- 180
- 时间
- 3000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 719
- 已通过
- 192
- 上传者