清華考研複試上機 N的階乘

2021-08-14 17:30:43 字數 735 閱讀 3451

輸入乙個正整數n,輸出n的階乘。

正整數n(0<=n<=1000)
輸入可能包括多組資料,對於每一組輸入資料,輸出n的階乘
示例1

4

515

24

1201307674368000

思路:1000的階乘肯定是超過long long不知道多少位的。所以這道題只能用字串來處理。好在這道題要實現的乘法是乙個大整數乘以乙個小數字(1000以內),比乙個完整的大整數乘法簡單許多。

過程:用1001個字串儲存0~1000的階乘,初始化0和1的階乘為"1",遍歷一遍字串,計算出2~1000的階乘。這個乘法比較簡單,測試時只需要查表即可。

#include #include #include #include #include #include #include #include using namespace std;

// str is reversed

string str[1005];

// sum = str * factor

void mul(string &sum, const string &str, int factor)

while(carrior != 0)

}int main()

int n;

while(cin>>n)

cout << "\n";

}}

清華考研複試上機 進製轉換

將m進製的數x轉換為n進製的數輸出。輸入的第一行包括兩個整數 m和n 2 m,n 36 下面的一行輸入乙個數x,x是m進製的數,現在要求你將m進製的數x轉換成n進製的數輸出。輸出x的n進製表示的數。輸入時字母部分為大寫,輸出時為小寫,並且有大資料。示例1 16 10 f 15思路 這個題難就難在有 ...

清華考研複試機試題

題目描述 使用 伺服器能夠在一定程度上隱藏客戶端資訊,從而保護使用者在網際網路上的隱私。我們知道n個 伺服器的ip位址,現在要用它們去訪問m個伺服器。這 m 個伺服器的 ip 位址和訪問順序也已經給出。系統在同一時刻只能使用乙個 伺服器,並要求不能用 伺服器去訪問和它 ip位址相同的伺服器 不然客戶...

清華06cs考研複試上機題(含解答)

清華大學計算機 06考研上機題 只有系統結構方向參加上機,3 月 27 日2 00 4 00 總述 用檔案 input.txt 輸入,用檔案 output.txt 輸出。程式設計環境只能用vc,沒有msdn,不能上網,不能查資料。題目1 求n 的階乘。25分,5組資料 input.txt 4outp...