时间限制:1秒 空间限制:32768K
题目描述
输入n, 求y1=1!+3!+...m!(m是小于等于n的最大奇数) y2=2!+4!+...p!(p是小于等于n的最大偶数)。
输入描述: 每组输入包括1个整数:n
输出描述: 可能有多组测试数据,对于每组数据, 输出题目要求的y1和y2
输入例子: 4
输出例子: 7 26
吐槽:年代很久远的题,照着做就行了(最好打个表,这样效率高)
代码:
#include <iostream> using namespace std; long long a[110]; void jiecheng(){ a[1]=1; for(int i=2;i<=100;i++) a[i]=i*a[i-1]; } int main(){ int n; long long ans1,ans2; int tmp1,tmp2; jiecheng(); while(cin>>n){ ans1=ans2=0; if(n%2==0){ tmp1=n-1; tmp2=n; } else{ tmp1=n; tmp2=n-1; } for(int i=1;i<=tmp1;i=i+2) ans1=ans1+a[i]; for(int i=2;i<=tmp2;i=i+2) ans2=ans2+a[i]; cout<<ans1<<" "<<ans2<<endl; } return 0; }