階乘之和 第28屆ACM ICPC亞洲預賽

2021-07-25 15:52:52 字數 500 閱讀 9723

題目大意

輸入乙個數,判斷這個數能不能用互不相等的非負整數的階乘的和來表示,例如9=1!+2!+3!.

輸入在輸入檔案中給出幾個非負整數n,每行乙個數字,輸入的內容以乙個負數來結束。

輸出如果可以表示則輸出yes否則輸出no.

sample input

-1sample output

yesno

【解析】

這道題就是把0-9的階乘都算出來之後,從9的階乘開始,一直的比較然後不斷的相減,看最後n是否等於0,為0則是可以的否則就不行

#include#include#includeusing namespace std;

int main()

while(scanf("%d",&n)&&n>=0)

for(i=9;i>=0;i--)

}if(n!=0)

printf("no\n");

}return 0;

}

acm 階乘之和

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 給你乙個非負數整數 n,判斷 n是不是一些數 這些數不允許重複使用,且為正數 的階乘之和,如 9 1!2 3 如果是,則輸出 yes,否則輸出no 輸入 第一行有乙個整數0 輸出如果符合條件,輸出yes,否則輸出no 樣例輸入 ...

nyoj 階乘之和

階乘之和 描述 給你乙個非負數整數n,判斷n是不是一些數 這些數不允許重複使用,且為正數 的階乘之和,如9 1!2 3 如果是,則輸出yes,否則輸出no 輸入 第一行有乙個整數0 輸出如果符合條件,輸出yes,否則輸出no 樣例輸入 29 10 樣例輸出 yes no 方法一 includeint...

nyoj 階乘之和

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述給你乙個非負數整數n,判斷n是不是一些數 這些數不允許重複使用,且為正數 的階乘之和,如9 1!2 3 如果是,則輸出yes,否則輸出no 輸入第一行有乙個整數0 輸出如果符合條件,輸出yes,否則輸出no 樣例輸入 2 9 10...