PAT甲級2019春季真題題解

2021-10-11 06:19:05 字數 3045 閱讀 2333

簽到題,素數不需要用篩法,直接o(sqrt(n))即可。

熱身題,字串處理,使用集合判斷。

稍難,圖論+並查集,還有要理解題意(個人認為pat最難的點)。

#include

#include

#include

#define ac cin.tie(0);cin.sync_with_stdio(0);

using

namespace std;

const

int maxn =

1010

;int g[maxn]

[maxn]

, pre[maxn]

;bool vis[maxn]

;vector<

int> v;

int n, m, k;

intfind

(int a)

intmain()

for(

int i =

1; i <= n; i++)}

//可疑詐騙**加入v

if(cnt > k && bt *

5<= cnt)

v.push_back

(i);

}//沒有可疑人員if(

!v.size()

)//準備並查集

要細心,做對不容易,建樹、dfs,處理每個輸入。(ps. 滿二叉樹的定義有歧義。)

#include

#include

using

namespace std;

const

int maxn =

1010

;int post[maxn]

, in[maxn]

;int le[maxn]

, ri[maxn]

, map[maxn]

, dep[maxn]

;int n, m, k;

//建樹

intbuildtree

(int a,

int b)

//確定是否為滿二叉樹並且確定節點的層次

void

dfs(

int root,

bool

&op,

int t)

intmain()

k = n -1;

int root =

buildtree(0

, n -1)

;//判斷是否為滿二叉樹

//是否為滿二叉樹

PAT甲級2020春季真題題解

簽到題,可以使用stoi將字串轉換為數字,然後試除法判斷是否為素數。include include using namespace std bool check const string s intmain 取子串 使用unordered set來做,比set效率高,如果不要求集合有序的話。incl...

2019春季PAT甲級3和4題解

教育超市買了一套,1 2忘本地存了。prime和靜態鍊錶,較為簡單。3 電信詐騙 一開始沒用dfs,每個團體儲存的只是查詢點的鄰近點,有乙個6分的測試點過不去。include include include include include include include include includ...

題解 2021PAT春季甲級

7 1 arithmetic progression of primes 篩法預處理區間內的素數 因為已知數列長度,如果知道數列第 一 二個數即可求得整個數列 暴力列舉前兩個數,看後續是否滿足兩個條件 在所有找出的符合的數列中按題目要求得到最後應該輸出的那個數列 特殊情況 n 1 n 2 m 2 n...