結果

問題 No.556 仁義なきサルたち
ユーザー kotatsugame
提出日時 2017-08-11 23:17:59
言語 C
(gcc 9.3.0)
結果
AC  
実行時間 5 ms / 2,000 ms
コード長 316 Byte
コンパイル時間 96 ms
使用メモリ 8,944 KB
最終ジャッジ日時 2020-05-25 04:04:45

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
testcase_00 AC 0 ms
6,896 KB
testcase_01 AC 1 ms
6,904 KB
testcase_02 AC 1 ms
6,900 KB
testcase_03 AC 0 ms
8,896 KB
testcase_04 AC 1 ms
8,944 KB
testcase_05 AC 0 ms
6,896 KB
testcase_06 AC 1 ms
6,900 KB
testcase_07 AC 1 ms
8,896 KB
testcase_08 AC 1 ms
6,900 KB
testcase_09 AC 0 ms
6,896 KB
testcase_10 AC 1 ms
6,900 KB
testcase_11 AC 1 ms
8,940 KB
testcase_12 AC 1 ms
8,940 KB
testcase_13 AC 1 ms
8,944 KB
testcase_14 AC 1 ms
8,944 KB
testcase_15 AC 5 ms
6,900 KB
testcase_16 AC 2 ms
6,900 KB
testcase_17 AC 3 ms
6,896 KB
testcase_18 AC 3 ms
6,900 KB
testcase_19 AC 3 ms
6,896 KB
testcase_20 AC 4 ms
8,944 KB
testcase_21 AC 3 ms
6,900 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:1:3: 警告: 複数文字からなる文字定数 [-Wmultichar]
    1 | p['~~'];c['~~'];i;a,b;
      |   ^~~~
main.c:1:1: 警告: データ定義が型または記憶域クラスを持っていません
    1 | p['~~'];c['~~'];i;a,b;
      | ^
main.c:1:1: 警告: 型がデフォルトの ‘int’ に ‘p’ の宣言内でなります [-Wimplicit-int]
main.c:1:11: 警告: 複数文字からなる文字定数 [-Wmultichar]
    1 | p['~~'];c['~~'];i;a,b;
      |           ^~~~
main.c:1:9: 警告: データ定義が型または記憶域クラスを持っていません
    1 | p['~~'];c['~~'];i;a,b;
      |         ^
main.c:1:9: 警告: 型がデフォルトの ‘int’ に ‘c’ の宣言内でなります [-Wimplicit-int]
main.c:1:17: 警告: データ定義が型または記憶域クラスを持っていません
    1 | p['~~'];c['~~'];i;a,b;
      |                 ^
main.c:1:17: 警告: 型がデフォルトの ‘int’ に ‘i’ の宣言内でなります [-Wimplicit-int]
main.c:1:19: 警告: データ定義が型または記憶域クラスを持っていません
    1 | p['~~'];c['~~'];i;a,b;
      |                   ^
main.c:1:19: 警告: 型がデフォルトの ‘int’ に ‘a’ の宣言内でなります [-Wimplicit-int]
main.c:1:21: 警告: 型がデフォルトの ‘int’ に ‘b’ の宣言内でなります [-Wimplicit-int]
    1 | p['~~'];c['~~'];i;a,b;
      |                     ^
main.c:2:1: 警告: 戻り値の型をデフォルトの ‘int’ にします [-Wimplicit-int]
    2 | f(a){return p[a]-a?p[a]=f(p[a]):a;}
      | ^
main.c: 関数 ‘f’ 内:
main.c:2:1: 警告: ‘a’ の型をデフォルトの ‘int’ にします [-Wimplicit-int]
main.c: トップレベル:
main.c:3:1: 警告: 戻り値の型をデフォルトの ‘int’ にします [-Wimplicit-int]
    3 | main(n){
      | ^~~~
main.c: 関数 ‘main’ 内:
main.c:3:1: 警告: ‘n’ の型をデフォルトの ‘int’ にします [-Wimplicit-i

ソースコード

diff #
p['~~'];c['~~'];i;a,b;
f(a){return p[a]-a?p[a]=f(p[a]):a;}
main(n){
	for(scanf("%d%*d",&n);i++<n;c[i]=1)p[i]=i;
	for(;~scanf("%d%d",&a,&b);)
	{
		a=f(a),b=f(b);
		a-b&&(c[a]>c[b]?p[b]=a,c[a]+=c[b]:c[a]<c[b]?p[a]=b,c[b]+=c[a]:p[a]<p[b]?p[b]=a,c[a]+=c[b]:(p[a]=b,c[b]+=c[a]));
	}
	for(i=0;i++<n;)printf("%d\n",f(i));
}
0