PAT(甲級)2023年秋季考試

2021-10-11 07:54:54 字數 3500 閱讀 2453

題意: n 只熊貓排成一排喝奶。每只熊貓至少分配 200ml 的牛奶,如果乙個熊貓比它旁邊的熊貓重,那麼就需要比旁邊的熊貓至少多喝 100ml 的牛奶。如果體重相同,分配的牛奶要相同。問最少需要分配多少的牛奶,才能滿足要求

思路:從左往右掃一遍,每只熊貓都和左邊的比。然後從右往左掃一遍,每只熊貓都和右邊的比。這樣就可以滿足條件了。

#include 

.h>

#define ll long

long

using namespace std;

const

int maxn=

1e5+5;

int n;

int a[maxn]

,val[maxn]

;int

main()

cur=

10000

;for

(int i=n; i>=1;

--i)

else

if(a[i]

==cur)

else val[i]

=max

(val[i]

,200);

cur=a[i];}

int ans=0;

for(

int i=

1; i<=n;

++i) ans+=val[i]

;printf

("%d\n"

,ans)

;return0;

}

題目鏈結

題意:給定 n 塊地,m 塊錢,每塊地的**為 a

ia_i

ai​ 。你可以選擇乙個區間 [l,

r][l,r]

[l,r

] 買地,問有幾種不同的買法?

思路:二分。列舉起點 i,對每乙個 i 找到最右邊可以買的地方。中間的都是可以選擇的。

題意:給定中序和前序遍歷的結果,求一顆二叉樹的左檢視

思路:常規建樹操作。

題意:有 n 個等級,等級之間存在前置關係。假設 a 等級是 b 等級的前置,a 需要達到 s 分,才能達到 b 等級,並且會獲得 d 元的代金券。現有 m 個關係,k 個詢問,問 t 點能否直接到達,或者求最短(分數最少)的達到 t 的路徑。如果最短路相同,則輸出獲得代金券最多的路徑。

思路

#include 

.h>

#define ll long

long

using namespace std;

const

int maxn=

1010

,inf=

1e9;

int n,m;

struct egde

;vector

e[maxn]

;int in[maxn]

,dis[maxn]

,val[maxn]

,pre[maxn]

;int op[maxn]

,out[maxn]

;void

topo()

queue<

int>

q;for

(int i=

0; i<=n-1;

++i)

}while

(!q.

empty()

)else

if(dis[v]

==dis[u]

+w)}}}

}int

main()

);in[v]++;

out[v]++;

}topo()

;int k;

scanf

("%d"

,&k)

;for

(int i=

1; i<=k;

++i)

scanf

("%d"

,&op[i]);

bool ok=1;

for(

int i=

1; i<=k;

++i)

if(dis[op[i]

]==inf) ok=0;

if(ok)

}else

}return0;

}

7-1:左右掃一遍即可。一開始想的是以大小來貪心,會有點錯誤。。

7-2:二分結束之後,需要check一下,這個二分的結果 l 是否符合要求。

7-3:無

7-4:無

PAT(乙級)2023年秋季考試

模擬。include using namespace std int sum string s int main else 模擬。include using namespace std int func int n int res 0 while mul return res int main in...

2020 PAT秋季甲級考試 91分 記

好坑,我想的是找出單調序列,從小到大依次賦值,序列最大的點先放著,之後根據兩邊的值確定每個最大點處的值。最後乙個點wa 3分 code1 include using namespace std typedef long long ll int d 10005 int main if j n j if...

2019秋季PAT甲級考試心得

第一道題一共四個測試點,做了乙個小時,有兩個測試點沒過,得了12 20分 做題的時候遇到乙個問題,就是include之後,使用pow 10,n 計算報錯具有多個定義之類的 具體忘了怎麼說的了,sqrt也會報錯,有空的時候看看是什麼原因,上次pat考試也遇到了這個問題,而且後來忘了這回事,一直沒解決,...