題意: 從起點到終點,讓這條路徑上的每一條邊都盡量短(不是求總路徑最短)。
做法: 運用kruscal的做法,每次構造最短邊,知道起點和終點在乙個集合中,那麼當前的最短邊就是 所求結果!
**:
#include#include#includeusing namespace std;
int fa[100005],son[100005];
struct point
point[100005];
struct node
e[100005];
double dis(int a,int b)
bool cmp(struct node aa,struct node bb)
else
return 1;
}int main()
sort(e+1,e+num+1,cmp);
for(i=1;i<=n;i++)
fa[i]=i,son[i]=1;
len=0;
for(i=1;i<=num;i++)
if(join(e[i].a,e[i].b))
// 此處判斷條件出錯,不是要構造完全的生成樹,只要起點、終點在乙個集合中就行!
}printf("case #%d : %.3lf\n\n",++ncase,ans);
}return 0;
}
交大OJ 求素數個數 1783和 2110
problem d 素數的個數 time limit 1000ms memory limit 65536k total submit 183 accepted 28 description 數論是數學的乙個重要分支,素數是研究數論的重要課題之一。現在,你需要完成乙個任務,就是尋找區間 a,b 中素數...
上海交大oj 數學題3 數字dp)
給定乙個數字,他在十進位制下從高位到低位一次是n0,n1,n2,n3,那麼定義它的 差和 為n0 n1 n2 n3 如 十進位制數字abcdefg,每個字母代表乙個位,那麼差和為a b c d e f g。所以十進位制數字1234567差和為1 2 3 4 5 6 7 4 現在給你們乙個閉區間 m,...
交大oj 1008 二哥買期貨 C 總結
這個公式可以根據日期計算這一天是星期幾,具體公式如下 w d 2 m 3 m 1 5 y y 4 y 100 y 400 mod 7 這個函式返回的結果是0 6的整數,表示星期一到星期天 int getweeknumber int year,int month,int day return day ...