另一種階乘問題

題目鏈接http://acm.nyist.net/JudgeOnline/problem.php?pid=65

描述

大家都知道階乘這個概念,舉個簡單的例子:5!=1*2*3*4*5.現在我們引入一種新的階乘概念,將原來的每個數相乘變爲i不大於n的所有奇數相乘例如:5!!=1*3*5.現在明白現在這種階乘的意思了吧!

現在你的任務是求出1!!+2!!......+n!!的正確值(n<=20)

輸入
第一行輸入一個a(a<=20),代表共有a組測試數據
接下來a行各行輸入一個n.
輸出
各行輸出結果一個整數R表示1!!+2!!......+n!!的正確值
樣例輸入
2
3
5
樣例輸出
5
23
#include<iostream>
#include<string.h>
#include<stdio.h>
#include<ctype.h>
#include<algorithm>
#include<stack>
#include<queue>
#include<set>
#include<math.h>
#include<vector>
#include<deque>
#include<list>
using namespace std;
int main()
{
    int n,T,i,s=1,sum=0;
    scanf("%d",&T);
    while(T--)
    {
        s=1;sum=0;
        scanf("%d",&n);
        while(n)
        {
            for(i=1;i<=n;)
            {
                s=s*i;
                i=i+2;
            }
            sum+=s;
            s=1;
            n--;
        }
        printf("%d\n",sum);
    }
    return 0;
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章