很坑爹,看了部落格中關於...a a...和...a a...的交集是a a而不是a而恍然大悟。不過筆者之前倒不是出錯,是因為用set來接受輸入,然後把set轉化成vector(然後比較相鄰vector中的元素是否相等,oj給出的是超時,並不是出錯,所以也沒有想到交集是a a的問題,一直以為要優化。知道是交集a a的問題後,直接改了**,最後乙個case也通過了。
#include#include#includeusing namespace std;
int main()
while(scanf("%d", &num) && num != -1)
int p1 = 0, p2 = 0, cnt=0;
while(p1 != vec1.size() && p2 != vec2.size())
else if(vec1.at(p1) > vec2.at(p2))
else
}if(!cnt)
printf("null");
printf("\n");
return 0;
}
PAT 兩個有序鍊錶序列的合併
本題要求實現乙個函式,將兩個鍊錶表示的遞增整數序列合併為乙個非遞減的整數序列。函式介面定義 list merge list l1,list l2 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ptrtonode list...
合併兩個有序鍊錶序列
本題要求實現乙個函式,將兩個鍊錶表示的遞增整數序列合併為乙個非遞減的整數序列。list merge list l1,list l2 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ptrtonode list 定義單鏈表型...
鍊錶 兩個有序鍊錶序列的合併
已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的並集新非降序鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 表示序列的結尾 不屬於這個序列 數字用空格間隔。在一行中輸出合併後新的非降序鍊錶,數字間用空格分開,結尾不能有多餘空格 若新鍊錶為空,輸出null。1 3 ...