2020 2 25普及C組模擬賽10(第二題)

2021-10-03 07:23:18 字數 1700 閱讀 7792

題目描述

在統計完朋友情況之後,小明又對大家的畢業學校產生興趣,但是他覺得單純的統計人數是一件非常無聊的事情,於是他設計了乙個演算法,同一所學校畢業的學生,第1個將獲得1分,第2個獲得2分,第3個獲得4分…,第i個將獲得2^(i-1)分,總分就是這所小學的得分,小明想知道得分最高的學校有多少分。

輸入

輸入檔案score.in的第一行有兩個整數n和m,n表示總人數,m表示已知的同校關係數量。

接下來m行,每行有2個以空格隔開的整數a和b,表示a和b是來自同一所學校,a和b均為1到n之間的整數。不會給出重複的資訊。

輸出

輸出檔案score.out只有一行,為所有學校中的最高得分。最後得分可能會很大,你只需要輸出後100位即可,不足100位的請直接輸出。

樣例輸入

5 31 23 4

1 3樣例輸出

資料範圍限制

60%的資料,1 <= n <= 10

80%的資料,1 <= n <= 70

100%的資料,1 <= n <= 10000,1 <= m <= 100000

提示

1、2、3、4來自同一所學校,該所學校所得的分數為1+2+4+8=15

正解

並查集+高精度

並查集

ac**

#include

#include

#include

using

namespace std;

int fa,n,m,x,y,k,l,o,m1,b[

1005

],c[

1005

],a[

10005

],pre[

10005];

intfind

(int x)

//並查集

void

bcj(

int x,

int y)

//並查集

m1=max(m1,

max(a[x1]

,a[y1]))

;}intmain()

b[100]=

1;c[100]=

1;for(

int i=

2;i<=m1;i++

)//高精度

o=1;

k=0;

for(

int j=

100;j>=

1;j--

)//高精加

} o=1;

while

(c[o]==0

&&o<

100)o++

;//開頭不能為零

for(

int i=o;i<=

100;i++

) cout<;return0;

}

2020.2.25普及c組模擬賽10(第一題)

2020.2.25普及c組模擬賽10(第二題)

2020.2.25普及c組模擬賽10(第三題)

2020.2.25普及c組模擬賽10(第四題)

2020.2.25普及c組模擬賽10(總結)

2020 2 25普及C組模擬賽10(第一題)

題目描述 經過六年的努力,小明終於被一所知名中學錄取。優秀的小明總是對一些奇奇怪怪的事情感興趣,這次他想知道誰在這所新學校擁有的朋友最多,由於大家都才剛報到,所以小明只知道大家兩兩之間是否是朋友關係。輸入 輸入檔案friend.in的第一行有兩個整數n和m,n表示總人數,m表示總關係數。接下來m行,...

牛客模擬賽1 普及組

題號題目 t1牛牛的密碼 t2牛牛的跳跳棋 t3牛牛的最大興趣組 t4牛牛的滑動視窗 得分120 120 直接照題意模擬即可。include include include include using namespace std char xy 100010 dy 100010 sz 100010 ...

2020 10 05 普及組 模擬賽C組總結

總結這次考試沒發揮好,第二題沒有拿滿分,下次要繼續努力 t1 superpow 10 題目大意 已知a b 超級冪 代表 b個a的冪,求n對數的超級冪之積的個位數。正確思路 當打表後可以發現 b是沒用的,如果b大於2,b就等於2,答案和原來的是一樣的。所以處理一下跑個快速冪就行了。至於為什麼拿10分...