PAT甲級2020春季真題題解

2021-10-11 02:27:17 字數 2816 閱讀 1966

簽到題,可以使用stoi將字串轉換為數字,然後試除法判斷是否為素數。

#include

#include

using

namespace std;

bool

check

(const string &s)

intmain()

//取子串

使用unordered_set來做,比set效率高,如果不要求集合有序的話。

#include

#include

#include

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

using

namespace std;

unordered_set<

int> set1;

int arr[20]

[1010];

bool vis[20]

;int n, m;

//是否為集合元素的差

bool

check

(int a)

return

false;}

intmain()

//本輪有人被淘汰

if(tmp.

size()

)}} vector<

int> ans;

//求最後的勝者

for(

int i =

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

(!vis[i]

) ans.

push_back

(i);

if(ans.

size()

)else

cout <<

"no winner."

;return0;

}

簡單的圖論題,細心即可/

#include

#include

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

using

namespace std;

const

int maxn =

510;

bool g[maxn]

[maxn]

, vis[maxn]

;int arr[maxn]

;int n, r, k, m;

intmain()

cin >> m;

while

(m--

)for

(int j = i +

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

if(cnt < k)

cout <<

"error: too few species."

;else

if(cnt > k)

cout <<

"error: too many species."

;else

if(m)

cout << endl;

}return0;

}

模擬題,需要很細心,使用優先佇列解決,注意把題意理解了,樣例手算一遍。

#include

#include

#include

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

using

namespace std;

const

int maxn =

100010

;struct node

;//優先排op為false的,也就是本次run的,run相同則按照大小順序排序

bool

operator

<

(const node &b)

const

} arr[maxn]

;int n, m;

priority_queue q;

intmain()

int pos =0;

//前m個元素入隊

for(

int i =

0; i < m; i++

) q.

push

(arr[pos++])

;while

(true

)//輸出結果

for(

int i =

0; i < v.

size()

; i++)if

(q.empty()

)break

; vector pre;

while

(!q.

empty()

)//本輪run結束了,進行下一輪run,原本下一輪run的元素將op重新置為false,開始新一輪排序,

for(node &a:pre)

cout << endl;

}//while

return0;

}

pat衝衝衝!!!

PAT甲級2019春季真題題解

簽到題,素數不需要用篩法,直接o sqrt n 即可。熱身題,字串處理,使用集合判斷。稍難,圖論 並查集,還有要理解題意 個人認為pat最難的點 include include include define ac cin.tie 0 cin.sync with stdio 0 using names...

題解 2021PAT春季甲級

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

PAT甲級2018冬秋季真題題解

簡單的列舉題。include define ac cin.sync with stdio 0 using namespace std const int maxn 110 int arr maxn int n bool check int a,int b 猜人 if arr i 0 arr i a ...