日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

uva 10034 Freckles (kruskal||prim)

發布時間:2025/4/5 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 uva 10034 Freckles (kruskal||prim) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目上僅僅給的坐標,沒有給出來邊的長度,不管是prim算法還是kruskal算法我們都須要知道邊的長度來操作。

這道題是浮點數,也沒啥大的差別,處理一下就能夠了。

有關這兩個算法的介紹前面我已經寫過了。就不在多寫了

prim算法:

<span style="font-family:Courier New;font-size:18px;">#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #include<vector> #include<set> #include<string> #include<algorithm> #include<climits> using namespace std; struct node {double i,j; }g[105]; double gra[105][105]; double dist(double a,double b,double c,double d) {return sqrt((a-c)*(a-c)+(b-d)*(b-d)); } int n,cnt=0,T; void prim() {int visit[105],now,i,j;double dis[105];double Min;memset(visit,0,sizeof(visit));for(i=1; i<=n; i++)dis[i] = INT_MAX;visit[1] = 1, dis[1] = 0, now = 1;//now都是當前新加的點 for(i=1; i<=n; i++){for(j=1; j<=n; j++){if(!visit[j] && dis[j]>gra[now][j])//用新加的點來更新其它點到此集合的距離 dis[j] = gra[now][j];}Min = INT_MAX;for(j=1; j<=n; j++){if(!visit[j] && dis[j] < Min)//每次都找到距離最小的點。加進去 Min = dis[now = j];}visit[now] = 1;} double sum = 0;for(i=1; i<=n; i++){sum += dis[i];}printf("%.2lf\n",sum);if(cnt!= T)//注意每兩個輸出案例之間都有一個換行 cout << endl; } int main() {int i,j;cin >> T;while(cin >> n){cnt ++;for(i=1; i<=n; i++){cin >> g[i].i >> g[i].j; } memset(gra,0,sizeof(gra));for(i=1; i<=n; i++){for(j=i+1; j<=n; j++){gra[i][j] = gra[j][i] = dist(g[i].i,g[i].j,g[j].i,g[j].j);}}prim();}return 0; } </span>
kruskal算法:

<span style="font-family:Courier New;font-size:18px;">#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #include<vector> #include<set> #include<string> #include<algorithm> #include<climits> using namespace std; struct node {int i,j;double len; }gra[10005]; struct node1 {double i,j; }g[105]; int p[105]; double dist(double a,double b,double c,double d) {return sqrt((a-c)*(a-c)+(b-d)*(b-d)); } int cmp(const void *a,const void *b) {return (((node *)a)->len - ((node *)b)->len > 0) ? 1:-1; } int n,cnt=0,T,k; int find(int x) {return x == p[x]?

x: p[x] = find(p[x]); } void kruskal() { double sum = 0; int i; for(i=1; i<k; i++) { int x = find(gra[i].i); int y = find(gra[i].j); if(x!=y) { sum += gra[i].len; p[x] = y; } } printf("%.2f\n",sum); if(cnt != T) cout << endl; } int main() { int i,j; cin >> T; while(cin >> n) { cnt ++; for(i=1; i<=n; i++) { cin >> g[i].i >> g[i].j; } memset(gra,0,sizeof(gra)); k=1; for(i=1; i<=n; i++) { for(j=i+1; j<=n; j++) { gra[k].len = dist(g[i].i,g[i].j,g[j].i,g[j].j); gra[k].i = i; gra[k].j = j; k++; } } //prim(); for(i=1; i<=n; i++) p[i] = i; qsort(gra+1,k-1,sizeof(gra[0]),cmp); kruskal(); } return 0; } </span>



總結

以上是生活随笔為你收集整理的uva 10034 Freckles (kruskal||prim)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美极品一区二区三区 | 日本在线一本 | 日韩精品极品视频免费观看 | 爽爽淫人 | 精品美女 | 精品欧美一区二区在线观看 | 国产女人高潮视频 | 91一区二区三区 | 蜜乳av一区二区三区 | 中文字幕一区二区三区5566 | 九九黄色片 | 二区三区免费 | 性色av无码久久一区二区三区 | 狗爬女子的视频 | 色999视频 | 国产麻豆91视频 | 久久一区二区三区精品 | 99精品久久久久 | 国产精品自拍第一页 | 亚洲国产日韩一区二区 | 欧美人与性动交a欧美精品 日韩免费高清视频 | 中日韩午夜理伦电影免费 | 国语对白少妇spa私密按摩 | 日本美女一区二区 | 欧美在线v| 亚洲国产看片 | 天天色天天射天天操 | 好吊日在线观看 | 久久精品国产亚洲av麻豆图片 | 亚洲激情五月 | 亚洲自拍天堂 | 久久久久国产视频 | 国产精品永久免费观看 | 精品1卡二卡三卡四卡老狼 日韩三级网 | re久久| 日b影院| 手机看片1024国产 | 动漫av一区二区三区 | 男人天堂网在线 | 肉肉视频在线观看 | 欧美中文字幕 | 国产成人av无码精品 | 国产精品18久久久久久vr下载 | 欧美久久免费 | 和漂亮岳做爰3中文字幕 | 亚洲综合一 | 波多野结衣国产 | 日韩福利电影在线观看 | 最新国产三级 | 国产全肉乱妇杂乱视频 | 成人精品视频一区 | 天天爽天天射 | 国产高潮视频在线观看 | 七七色影院 | 午夜av免费 | 精品日韩一区二区三区 | 婷婷丁香六月 | 情欲超| 日韩精品中文字幕一区二区 | 少妇人妻偷人精品视频蜜桃 | 欧美日本亚洲韩国国产 | 欧美一区日韩一区 | 亚洲天堂美女 | 天天夜夜人人 | 97在线国产 | 色悠悠国产精品 | 日本三级吃奶头添泬 | 免费看黄色一级视频 | 天堂网在线最新版www中文网 | 色婷五月天 | 久久久久国产精品人妻 | 狠狠干一区 | 丝袜在线视频 | 国产又黄又粗又爽 | 91黄色在线观看 | 色综合久久久久综合体桃花网 | 美丽的小蜜桃2:美丽人生 | 男人的亚洲天堂 | 欧美综合久久久 | 99热国产在线 | 日韩在线一卡二卡 | 亚洲精品免费观看 | 久久久青| 国产福利专区 | 东方成人av| 亚洲国产精品视频一区 | 成年人视频在线免费看 | 向日葵视频在线 | 波多野结衣高清视频 | xxx视频在线观看 | 中文字幕毛片 | 中文字幕9| 欧美成人三级精品 | 欧美区二区三区 | 男人的av| 中文字幕成人在线 | 少妇精品久久久久www | 女生脱裤子让男生捅 | 九九热视频免费 |