一些PAT基礎題

2021-10-04 05:20:59 字數 925 閱讀 7976

6-10本題要求實現乙個列印非負整數階乘的函式。

函式介面定義:

void print_factorial ( const int n );

其中n是使用者傳入的引數,其值不超過1000。如果n是非負整數,則該函式必須在一行中列印出n!的值,否則列印「invalid input」。

void print_factorial ( const int n )

int num[3001]=; // 確保可以儲存 n! 位數

int k,n;

k=1; // 位數

n=0; // 進製

num[0]=1; // init result 1

int tmp; // 階乘的任一元素與臨時結果的某位的乘積結果

// 最基本的乘法運算思想,將臨時結果的每位與階乘元素相乘

for(int i=2;i<=n;i++) // 開始階乘,階乘元素從 2 開始

puts("");

}

6.13給乙個嚴格遞增數列,函式int search_bin(sstable t, keytype k)用來二分地查詢k在數列中的位置。

函式介面定義:

int search_bin(sstable t, keytype k)

其中t是有序表,k是查詢的值。

int

search_bin

(sstable t, keytype k)

if(t.r[mid]

.key < k)}if

(t.r[right]

.key == k)

return right;

if(t.r[left]

.key == k)

return left;

return0;

}

ACM中的一些基礎題

素數是指只能被1和本身整除的自然數 1不是素數 關鍵是判斷乙個數是否為素數。bool isprime int int main return 0 判斷乙個數是否為素數 bool isprime int a return true source hdoj 1406 problem descriptio...

一些博弈題

題目鏈結 題面較長,這裡不貼圖了 一道比較基礎的博弈題,關鍵在於,如果起始點距離與0邊相連點之間存在奇數條邊時則先手存在必勝策略,反之則先手必敗。include include include include include include include include include inclu...

一些題(十一)

判斷乙個點對的最大流為 1 或 ge2 容易求出邊雙后做。接下來就要判斷兩個點的最大流是否為 3 也就是它們是否在乙個邊三聯通分量中。這相當於刪去圖中任意一條邊後這兩個點都在同乙個邊雙中。於是就可以每次刪邊求邊雙,並用 hash 判斷。時間複雜度 o n 2 對於每個 t i t 且若不進修隔離它最...