傳送門
資料:
6 320001 20002
20003 20004
20005 20006
20003 20001
20005 20004
20004 20006
題目的關鍵在於如何解決編號不相容問題,由以上資料可知,20003與20004和20001都不相容.
此時我們可以用:
map>mp;//用於存放一對多的關係
//此處迴圈是難點,第乙個for迴圈是為了遍歷g[i],
第二個是遍歷每個g[i]所對應的vector陣列,
如本題資料中20003(g[i])所對應的vector中有(20004和20001)兩個值,然後用從c陣列判斷g[i]所對應的編號是否在此次 cin >> g[i];中存在,
若存在flag標記為1.
for(int i=0; iusing namespace std;
map>mp;//用於存放一對多的關係
int main()
while(n--);//用於存放物品編號,注意每次迴圈初始化
for(int i=0; i> g[i];
c[g[i]]=1;//用於標記編號是否存在,存在則值為1,否則為零
}int flag=0;
for(int i=0; i}
if(flag==1)
else
cout << "yes" <}
return 0;
}
PTA 1090 危險品裝箱
貨櫃運輸貨物時,我們必須特別小心,不能把不相容的貨物裝在乙隻箱子裡。比如氧化劑絕對不能跟易燃液體同箱,否則很容易造成 本題給定一張不相容物品的清單,需要你檢查每一張貨櫃貨品清單,判斷它們是否能裝在同一只箱子裡。輸入第一行給出兩個正整數 n 10 4 是成對的不相容物品的對數 m 100 是貨櫃貨品清...
1090 危險品裝箱(25 分)
1090 危險品裝箱 25 分 貨櫃運輸貨物時,我們必須特別小心,不能把不相容的貨物裝在乙隻箱子裡。比如氧化劑絕對不能跟易燃液體同箱,否則很容易造成 本題給定一張不相容物品的清單,需要你檢查每一張貨櫃貨品清單,判斷它們是否能裝在同一只箱子裡。輸入第一行給出兩個正整數 n 10 4 是成對的不相容物品...
1090 危險品裝箱 (25 分)
貨櫃運輸貨物時,我們必須特別小心,不能把不相容的貨物裝在乙隻箱子裡。比如氧化劑絕對不能跟易燃液體同箱,否則很容易造成 本題給定一張不相容物品的清單,需要你檢查每一張貨櫃貨品清單,判斷它們是否能裝在同一只箱子裡。輸入第一行給出兩個正整數 n 10 4 是成對的不相容物品的對數 m 100 是貨櫃貨品清...