PAT 數學類總結

2021-09-28 22:21:36 字數 1581 閱讀 4413

pat a 1069 the black hole of numbers (20 分) 

學習點:

1.整型陣列和整數的相互轉換,整型陣列排序實現倒序

2. %04d進行輸出,實現缺0補0.

#include#includeusing namespace std;

bool cmp(int a, int b)

void to_array(int n, int number)

}int to_number(int number)

return n;

}int main()

return 0;

}

pat b 1013 數素數 (20 分)

注意點:

1. is_prime陣列要取得足夠大, 1e7

2.輸出格式限制,行末只能輸出'\n',不能輸出空格;最後一行,不能輸出多餘的空格

3.結束迴圈,可以用 break

4.陣列初始化為同乙個值的時候,只能用, 的話只會給第乙個值賦值。

#includeint prime[10010], pnum = 0;

bool is_prime[10000010] = ; // 0 is prime; 1 is not prime

void find_prime(int n) }}

int main()

}}

pat a 1059 prime factors (25 分)

思路,首先建立素數表,然後對n進行不斷的除法,在除的過程中不斷地記錄。

1. 因為分解直接從2開始的,要特判1=1。

2. long int 的型別其實就是int,在題目中表示冗長了。

3.定義 陣列結構體 factor{}的思想很重要。

4.在sqrt(n)的範圍內尋找素數,然後可能會留下乙個比sqr大的,直接賦值即可,為什麼我也不知道。

#include#includeconst int maxn = 100010;

int prime[maxn], pnum;

bool is_prime[maxn] = ; // zero is prime, 1 is not prime

void find_prime(long long max) }}

struct factor fac[20];

int main()

else

facnum++;

} if(n == 1)

break;

} if (n != 1)

for (int i = 0; i < facnum; i++)

else if (fac[i].cnt == 1)

if (i != facnum - 1)

printf("*");

} }

return 0;

}

數學模組總結

最近學的數論知識 線性篩法,高斯消元,導數積分,擴歐,組合數學。用數論優化的 dp斜率優化。先說線性篩,分為篩素數,尤拉函式,逆元,莫比烏斯 待學 篩素數 沒啥好說的 篩逆元 先求n i 表示a1 a2 ai,再求p n 表示n n 的逆元,將p i a i 1 即可得到p i 1 篩尤拉函式 根據...

數學方程總結

分式 方程是方程中的一種,是指 分母裡含有未知數或含有未知數整式的 有理方程 分式方程 方法 兩邊乘最簡公分母化分式方程為整式方程,得出解後驗根。分式方程和整式方程統稱有理方程。其中分式方程是分母含未知數的方程,整式方程是等號兩邊都為整式的方程。學好它,既可以培養學生的觀察 思維發展性 運算能力,又...

數學函式總結

2.數學函式總結 2.1 計算絕對值abs abs函式對乙個數值表示式結果計算絕對值 bit資料型別除外 返回整數。例 select abs 1 輸出 12.2 獲取大於等於最小整數值celling ceiling函式返回大於等於數值表示式 bit資料型別除外 的最小整數值。俗稱天花板函式,盡量往大...