浙江大學PAT甲級A1074題解 C 2

2021-10-01 22:55:37 字數 624 閱讀 2128

#include 

#include

#include

using namespace std;

struct node

;int

main()

while

(first!=-1

)}first = next[first];}

for(

int i=k;i<=real.

size()

;i=i+k)

//// cout<<"***************=="(int i=

0;isize()

;i++

)else

}}

這個第二個解法是開闢乙個靜態陣列next 儲存當前位址的下乙個位址 在構造鍊錶時候超時,只能得到22分。

解決辦法:題中給出首位址,則將首位址按順序放入vector,那麼就需要next[首位址],data[首位址]了,不需要此題中每次從給出結點找出首位址來放入結點!!此題解法,必須通過首位址找出a[i]放入real[i]才行,實際情況是找出首位址放入real[i],輸入時候儲存首位址對應next data,輸出時候通過首位址拿出即可!

最簡單靜態鍊錶詳情請見解法3。

浙江大學PAT甲級A1020(C )題解

include include include using namespace std const int content 50 struct node int post content int in content node create int postl,int postr,int inl,i...

浙江大學PAT甲級A1138 C )題解

如果有哪位同學幸運的看到這篇題解 恭喜你,你賺大了!你會看到乙個簡單理解而且實用的技巧。乍一看,不就是前序中序建樹嘛。有什麼奇怪的。如果此題常規建樹,後序遍歷後兩個測試用例超時!那麼怎麼進行優化呢?顯然 在尋找根結點時候,不用for迴圈 題中注釋 而改用map!map在輸入的時候已經記錄了根節點的位...

浙江大學pat 1001

注意點 1.對於輸出結果是負數先輸出負號 2.將結果轉化成char型別來進行輸出可以避免輸出 的複雜操作。這裡使用函式sprintf 實現。如下 include include include include include include define maxnum 0x3f3f3f3f defi...