題目地址:POJ 2263
這題是在網上的一篇關於優先隊列的博文中看到的。。但是實在沒看出跟優先隊列有什麼關系。。我用的二分+並查集做出來了。。。
二分路的載重量。然後用並查集檢查是否連通。
代碼如下:
#include #include #include #include #include #include #include #include #include using namespace std; struct node { int u, v, w; }bian[20000]; int bin[300], n, tot; int find1(int x) { return bin[x]==x?x:bin[x]=find1(bin[x]); } void merger(int x, int y) { int f1=find1(bin[x]); int f2=find1(bin[y]); if(f1!=f2) { bin[f2]=f1; } } int main() { int m, x, s, t, max1, ans, num=0, i; char s1[100], s2[100]; mapq; q.clear(); while(scanf("%d%d",&n,&m)!=EOF&&n&&m) { num++; tot=0; max1=-1; for(i=0;i>1; for(i=1;i<=n;i++) bin[i]=i; for(i=0;i=mid) { merger(bian[i].u,bian[i].v); } } if(find1(bin[s])==find1(bin[t])) { low=mid+1; ans=mid; } else { high=mid-1; } } printf("Scenario #%d\n%d tons\n\n",num,ans); } return 0; }
CF 412 D Giving Awards£¨ÍØÆËÅÅ
什麼叫Trie樹? Trie樹即字典樹。 又稱單詞查找
這段時間在做一個CS模式的項目,服務端運行在linux
I Love You Too HDU 2816,hdu2
Dijkstra算法,Dijkstra(迪傑斯特拉)算法是典
應用介紹 隨便瞧瞧是一款為android用戶量身定做的