joyoi 黑魔法師之門 (tyvj 1863)

2021-09-10 17:09:06 字數 1054 閱讀 6998

題目:

題目背景

題目描述

輸入格式

第一行包含兩個整數n和m。

接下來m行,每行兩個整數a和b,代表門控系統新增了一條無向邊 (a, b)。

輸出格式

輸出一共m行,表示每次操作後的密碼。

提示  第三次新增之後,存在乙個滿足條件的子圖 (其中1,2

,3是資料中【邊】的標號)。

第四次新增之後,存在三個子圖 ,,。

……對於30

% 的資料,n, m≤10。

對於100

% 的資料,n≤200000,m≤300000。

1、2、3

),(4、5、6

)分別組成乙個三元環,則圖中有三個所求子圖。

樣例資料

輸入樣例 #1 輸出樣例 #148

3132

2121

1314

2423

0013

771531

思路:

並查集。

每次加邊時查詢,如果相連的兩點在並查集中,答案乘以2。

最後答案減一。

**:

#include

using

namespace std;

#define maxn 200000

#define maxm 300000

#define md 1000000009

#define read(x) scanf("%d",&x)

struct edge

edge

(int xx,

int yy)

bool

operator

<

(const edge& oth)

const};

int n,m;

mapint> mp;

int fa[maxn+5]

;int

find

(int x)

intmain()

return0;

}

黑魔法師之門

給出乙個大小為 n 的無向圖,求圖中每個點的度數大於零且都是偶數的子圖的個數。子圖不一定是聯通的!則設圖中最小環 不由其它環組成的環 的個數為 x 如果同一聯通塊中的點再次聯通,就構成了乙個新的最小環。因為這些環選與不選都可構成新子圖,於是 ans 2 x 1 去掉乙個環都不選的情況 include...

Poetize I 黑魔法師之門

描述 description 題解 題意很清楚,但是感覺很神。剛開始一直在想如何構造,發現太複雜 然後查題解發現只有要當前兩點在同一連通塊裡,ans 2,最後輸出ans 1 表示不理解,就沒寫。昨天翻到了lyd的題解 他引入了乙個叫 元環 的東西,然後證明答案就是 2 元環的個數 我表示對元環的概念...

並查集 黑魔法師之門

黑魔法師之門 magician.pas c cpp 題目描述 的個數對1000000009取模的值。此處子圖 v,e 定義為 點集v和邊集e都是原圖的任意子集,其中e中的邊的端點都在v中。輸入格式 第一行包含兩個整數n和m。接下來m行,每行兩個整數a和b,代表門控系統新增了一條無向邊 a,b 輸出格...