模擬賽精題

2021-07-24 03:35:18 字數 1952 閱讀 8272

#21 t3:mst 

題意:給n(1~100000)個點,m條邊(n-1<=m<=min(n*n-1,1e5),保證能夠形成一棵樹

求解:對於每一條邊,求出每一條邊是否在所有最小生成樹上(any),或者至少在一顆最小生成樹上(at least one),或者不在任何一棵樹上(none)

思路:將權值排序,對所有權值相同的邊一起操作。如果兩條邊在同乙個連通分量,該邊為none。

構造乙個新圖g1,將所有邊對應的連通分量連邊,然後求橋,所有的橋即為any,剩下的所有邊為at least one

直到目前連邊的數量超過n-1次,退出迴圈。  下面貼**:

#include#include#define n 100111

struct edge for(int i=1;i<=m;i++)

if(ans[i]==-1) puts("none");

else if(ans[i]) puts("any");

else puts("at least one");

return 0;

}

#41 t2 part

題意:給你n個人,把所有人分成兩隊,對任意甲同學,必須使得與甲同學同隊的人都願意和甲同學同隊,無解輸出no solution

思路:二分圖染色 將所有不能同隊的同學連一條邊,無法形成二分圖則無解

有解時,對於每乙個連通塊,得到塊內0和1的數量,然後進行揹包求解

#include#include#define n 2011

using namespace std;

inline int read()

struct edgee[n*n];

int num=0, first[n];

inline void add(int a, int b)

int n, cnt=0, co[n], g[n][n], dp[n], c1[n][2];

queues;

int bfs(int u) else if(co[d]==co[x]) return 1;

} } return 0;

}int pre() return 0;

}int main() first[i]=-1,co[i]=-1;

} for(int i=1;i<=n;i++)

for(int j=1;j<=n;j++) if(g[i][j]==0&&i!=j) add(i,j),add(j,i);

if(pre()) dp[0]=1;

int m=n/2;

for(int i=1;i<=cnt;i++)

for(int j=m;j>0;j--) for(int j=m;j>0;j--)

} return 0;

}

#41 t3 kobe

給乙個圖,求起點s走k次到終點t的最小距離

思路:快速冪

#include#include#include#include#define n 211

#define inf 1047480000

using namespace std;

inline int read()

while(t>='0'&&t<='9') p=p*10+t-48, t=getchar();

return p*f;

}int n, s, t, k;

void min(int& x, int y)

struct mat

}f;int main() mat ans=f; k--;

while(k) if(ans.g[s][t]!=inf) printf("%d\n", ans.g[s][t]);

else puts("-1");

// printf("%d\n", inf);

return 0;

}

noip模擬賽 水題

題目描述 lyk出了道水題。這個水題是這樣的 有兩副牌,每副牌都有n張。對於第一副牌的每張牌長和寬分別是xi和yi。對於第二副牌的每張牌長和寬分別是aj和bj。第一副牌的第i張牌能覆蓋第二副牌的第j張牌當且僅當xi aj並且yi bj。注意牌不能翻轉 當然一張牌只能去覆蓋最多一張牌,而不能覆蓋好多張...

藍橋杯模擬賽題

在計算機儲存中,15.125gb是多少mb?這是一道結果填空的題,你只需要算出結果後提交即可。本題的結果為乙個整數,在提交答案時只填寫這個整數,填寫多餘的內容將無法得分。1200000有多少個約數 只計算正約數 這是一道結果填空的題,你只需要算出結果後提交即可。本題的結果為乙個整數,在提交答案時只填...

qdu 校賽 模擬的好題

kk一下子被驚到了,又要變2進製又要變16進製制,只擅長yy的kk怎麼會這麼嚇人的東西,於是就找青島大學的各位大神們幫助,你們能幫kk解決這個問題並且擊敗青大手速狗cillyb嗎?輸入 第一行輸入測試組數t。之後一段字串,回車結束 最多3000000 輸出 如題意所示 樣例輸入1 複製 1 42 樣...