1 条题解
-
0
C :
#include <stdio.h> int main () { int n; while(scanf("%d",&n)!=EOF) { long long int y1=0,y2=0; long long int plus=1; for(int i=1;i<=n;i++) { plus *= i; //printf("%djishu\n",plus); y1 +=plus; if(++i<=n) { plus *= i; //printf("%doushu\n",plus); //printf("%dy2\n",y2); y2 +=plus; //printf("%dy2\n",y2); } } printf("%lld %lld\n",y1,y2); } }
C++ :
#include <stdio.h> #include <algorithm> #include <iostream> using namespace std; long long int f[30]; void solve(){ long long int i,tmp=1; for(i=1;i<21;i++){ tmp=tmp*i; f[i]=tmp; } } int main(){ int n,i; long long int y1,y2; solve(); while(scanf("%d",&n)==1){ y1=y2=0; for(i=1;i<=n;i++){ if(i%2==1) y1+=f[i]; else y2+=f[i]; } printf("%lld %lld\n",y1,y2); } return 0; }
Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { int n, i; long y1, y2; Scanner sc = new Scanner(System.in); s(); while (sc.hasNext()) { n = sc.nextInt(); y1 = y2 = 0; for (i = 1; i <= n; i++) { if (i % 2 == 1) y1 += f[i]; else y2 += f[i]; } System.out.println(y1 + " " + y2); } } static long f[] = new long[30]; static void s() { long t = 1; int i; for (i = 1; i < 21; i++) { t = t * i; f[i] = t; } } }
- 1
信息
- ID
- 1383
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者