説明
重症急性呼吸器症候群(SARS)、原因不明の非定型肺炎は、他者への送信を最小限に抑えるために半ば2003年3月に世界的な脅威として認識された、最善の戦略は、他の人から容疑者を分離することです。
拡散はない-あなたの酔い大学(NSYSU)では、多くの学生のグループがあります。同じグループの学生が頻繁にお互いに相互通信し、学生はいくつかのグループに参加することができます。SARSの可能性のある送信を防ぐために、NSYSUは、すべての学生グループのメンバーリストを収集し、その標準作業手順(SOP)に以下のルールを作ります。
グループのメンバーが容疑者になると、グループ内のすべてのメンバーは、容疑者です。
しかし、彼らは学生が容疑者として認識されている場合、すべての容疑者を特定することは容易ではないことがわかります。あなたの仕事は、すべての容疑者を発見するプログラムを書くことです。
拡散はない-あなたの酔い大学(NSYSU)では、多くの学生のグループがあります。同じグループの学生が頻繁にお互いに相互通信し、学生はいくつかのグループに参加することができます。SARSの可能性のある送信を防ぐために、NSYSUは、すべての学生グループのメンバーリストを収集し、その標準作業手順(SOP)に以下のルールを作ります。
グループのメンバーが容疑者になると、グループ内のすべてのメンバーは、容疑者です。
しかし、彼らは学生が容疑者として認識されている場合、すべての容疑者を特定することは容易ではないことがわかります。あなたの仕事は、すべての容疑者を発見するプログラムを書くことです。
入力
入力ファイルは、いくつかの例が含まれています。各テストケースは、nは、学生の数であり、mはグループの数であるライン内の2つの整数n及びmで始まります。あなたは0 <N <= 30000及び0 <= M <= 500のすべての学生が0とn-1との間の一意の整数により番号付けされ、そして最初生徒0は、すべての場合において容疑者として認識されていること。想定できます このラインは、グループのM個のメンバーリスト、グループごとに1つの行が続きます。各ラインは、グループ内のメンバーの数を表す単独で整数kから始まります。メンバーの数に続いて、このグループの学生を代表するk個の整数があります。行のすべての整数は、少なくとも1つのスペースで区切られます。
n = 0であり、m = 0の場合は、入力の終了を示し、そして処理する必要はありません。
n = 0であり、m = 0の場合は、入力の終了を示し、そして処理する必要はありません。
出力
各場合について、出力1つのラインの容疑者の数。
サンプル入力
100 4
2 1 2
5 10 13 11 12 14
2 0 1
2 99 2
200 2
1 5
5 1 2 3 4 5
1 0
0 0
サンプル出力
4 1 1
問題の意味
0どのように多くの(最終的な結果が0をカウント)のコレクションで人を探します。
問題解決のためのアイデア
同じルートルート0を取得します。
コードは以下の通りです
1つの#include <iostreamの> 2 使用して 名前空間STDを、 3 CONST INT MAXN = 30100 。 4 INT M、N、[MAXN] F。 5 ボイドのinit(){ 6 のための(int型 I = 0 ; iが<= N; iが++)F [I] = I。 7 } 8 INT GETF(INT V){ 9 もし([V] == V f)に 戻り、V。 10 他の リターン [V] = F GETF([V] F)。 11 } 12 空隙MEG(INT V、int型{U)を 13 のint T1 = GETF(V)、T2 = GETF(U)。 14 であれば(T1 =!T2){ 15 F [T2] = T1。 16 } 17 } 18 INT メイン(){ 19 ながら(CIN >> N >> M){ 20 のinit(); 21 であれば(N == 0 && m個の== 0) 破ります。 22 のために(int型 I = 0 ;私がm <I ++は{) 23 INTK、モミ、秒。 24 CIN >> K。 25 cinを>> モミ。 26 のために(INT J = 01、J <K、J ++ ){ 27 CIN >> 秒。 28 MEG(FIR、秒)。 29 } 30 } 31 のための(int型 i = 1 ; iが<= N; iが++ )GETF(I)。 32 INTの和= 0 。 33 のためには、(int型、I = 0 ; iが<= N; I ++){ 34 であれば(F [I] == F [ 0 ]){ 35 和++ 。 36 } 37 } 38 COUT <<和<< ENDL。 39 } 40 リターン 0 。 41 }