[CodeForces - 1167C]ニュース配信(互いに素なセット)

ニュース配信

問題の意味

一人にメッセージを広める際に、小さなグループがそれぞれ出力に-1、ニュースを知っていたのn数 - - おそらくいくつかの小グループに分け、1で一人一人を与える場合は、メッセージを渡すの人の数n、どのように多くの人々はニュースを知っています。

入力

KIのm行に続く最初の行nおよびM(N、M <= 5 * 10 ^ 5)、次いでKI(0 <= KI <= n)の数、個々のKi QQグループの代表

出力

出力数n、i番目の代表、人は噂が愛を知った後、少数の人々まで送信することができます

入力
7 5 
3 2 5 4 
0 
2 1 2 
1 1 
2 7 6
出力
4 4 4 4 1 2 2 
トピックリンク
 
互いに素セットの質問
ルートノードの各ノードは、[]和のルートに保存され、クエリの各数値グループの総数N、互いに素なセットを使用してコレクションにメンバーを追加し続け、各セットの数を記録する - タイトルは、出力1と理解しました出力ルートノードSUM []。
ブリーフ互いに素-設定し、見た目になります
 
ACコード
書式#include <iostreamの> 
の#include <cstdioを> 
する#include <fstreamの> 
の#include <アルゴリズム> 
書式#include <cmath> 
の#include <両端キュー> 
の#include <ベクトル> 
の#include <キュー> 
の#include < 文字列 > 
の#include <CStringの> 
#include <地図> 
の#include <スタック> 
の#include < 設定 > 
の#include <sstream提供>
 の#define IOS ios_base :: sync_with_stdio(0)。cin.tie(0)。
長い長いLL用
 の#define 0x3f3f3f3f INF
 の#define MEM(X、Y)のmemset(X、Y、はsizeof(X))
 の#define MAXN 5 100005 *
 使用して 名前空間STD;
 int型 ; PAR [MAXN] // IのPAR [I]をルート
int型 SUM [MAXN]; // iはSUM [i]が設定数
int型N-、M、K、
 INT findr(INT X)// クエリルート
{
     IF(PAR [X] == X)
         リターンX;
     
        戻り PAR [X] = findr(PAR [X]を); 
} 
ボイドユナイト(INT X、INTY)
{ 
    X = findr(X); // X、Yルートチェック 
    Y = findr(Y)、
     IF(X == Y)// 同じことなく、根管を
        リターン; 
    PAR [Y] = X; // 場合は、すべての異なるが、Xに内蔵されたY、yはxの根であり、Y共感xは自由に本明細書に組み込まれることができる 
    SUM [X] = SUM + [Y]; // Xとして援用Y、Xは集合Xの数に等しいです。セットの数を設定数+ Y 
}
 INT (メイン)
{ 
    CIN >> N- M;
     のためのINT I = 1 ; I <= N; I ++は
    { 
        PAR [I] = I; 
        SUM [I] = 1 ; 
    } 
    一方(M-- 
    { 
        CIN >> K;
         int型、A、B
         IF(K> 0 
        { 
            // 最初の数及び本比較の背面に 
            CIN >> A;
             のためのINT I = 1 ; I <K; I ++ 
            { 
                CIN >> B、
                ユナイト(A、B); 
            } 
        } 
    } 
    のためのint型私は= 1 ; I <= N; Iは++ 
    { 
        int型 X = findr(I); //ルート、出力部数のルートチェック 
        COUTが<< SUM [X] << "  " ; 
    } 
    COUT << ENDL;
     戻り 0 ; 
}

 

おすすめ

転載: www.cnblogs.com/sky-stars/p/11222823.html