提出 #36861127


ソースコード 拡げる

// Not my code! Taken from https://atcoder.jp/contests/abc279/submissions/36844595
// and directly line by line converted to D language. Added "@safe:" directive
// at the top, moved "scanf" into a small @trusted wrapper function and replaced
// "printf" with "writeln".
//
// The size of the "idx" array is deliberately reduced from 600005 to 300005
// for testing whether this bug can be caught by runtime bounds checking
// enabled in the parts of code that are annotated as @safe.

@safe:
import std.stdio, core.stdc.stdio;

int[600005] fa;

void init() {
    fa[] = -1;
}

int find_root(int x) {
    if (fa[x] == -1) {
	return x;
    }
    return fa[x] = find_root(fa[x]);
}

void unite(int x, int y) {
    if (find_root(x) != find_root(y) && find_root(x) != -1) {
	fa[find_root(x)] = find_root(y);
    }
}

int[300005] now;
int[300005] idx;
int[600005] past;

int main() {
    init();
    int n = readint;
    int q = readint;
    for (int i = 0; i < n; i++) {
	now[i] = i;
	past[i] = i;
	idx[i] = i;
    }
    int cntn = n - 1;
    int cnt = n - 1;
    while (q--) {
	int tp = readint;
	if (tp == 1) {
	    int x = readint;
	    int y = readint;
	    x--, y--;
	    unite(now[y], now[x]);
	    now[y] = ++cntn;
	    past[cntn] = y;
	} else if (tp == 2) {
	    int x = readint;
	    x--;
	    idx[++cnt] = now[x];
	} else {
	    int x = readint;
	    x--;
	    writeln(past[find_root(idx[x])] + 1);
	}
    }
    return 0;
}

int readint() @trusted {
    int val;
    scanf("%d", &val); // "scanf" is not @safe and needs a @trusted wrapper
    return val;
}

提出情報

提出日時
問題 F - BOX
ユーザ ssvb
言語 D (GDC 9.2.1)
得点 0
コード長 1636 Byte
結果 RE
実行時間 102 ms
メモリ 17324 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 500
結果
AC × 1
AC × 64
RE × 8
セット名 テストケース
Sample sample_01.txt
All sample_01.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt, test_58.txt, test_59.txt, test_60.txt, test_61.txt, test_62.txt, test_63.txt, test_64.txt, test_65.txt, test_66.txt, test_67.txt, test_68.txt, test_69.txt, test_70.txt, test_71.txt
ケース名 結果 実行時間 メモリ
sample_01.txt AC 31 ms 13896 KiB
test_01.txt AC 13 ms 13932 KiB
test_02.txt AC 74 ms 13864 KiB
test_03.txt AC 74 ms 13804 KiB
test_04.txt AC 76 ms 13800 KiB
test_05.txt AC 73 ms 13684 KiB
test_06.txt AC 73 ms 13684 KiB
test_07.txt AC 71 ms 13888 KiB
test_08.txt AC 73 ms 13936 KiB
test_09.txt AC 74 ms 13932 KiB
test_10.txt AC 72 ms 13944 KiB
test_11.txt AC 71 ms 13792 KiB
test_12.txt AC 73 ms 13944 KiB
test_13.txt AC 70 ms 13812 KiB
test_14.txt AC 80 ms 13948 KiB
test_15.txt AC 71 ms 13688 KiB
test_16.txt AC 71 ms 13948 KiB
test_17.txt AC 74 ms 13892 KiB
test_18.txt AC 73 ms 13816 KiB
test_19.txt AC 73 ms 13920 KiB
test_20.txt AC 73 ms 13804 KiB
test_21.txt AC 73 ms 13792 KiB
test_22.txt AC 75 ms 13852 KiB
test_23.txt AC 78 ms 13596 KiB
test_24.txt AC 77 ms 13860 KiB
test_25.txt AC 77 ms 13792 KiB
test_26.txt AC 72 ms 13912 KiB
test_27.txt AC 78 ms 13816 KiB
test_28.txt AC 77 ms 13860 KiB
test_29.txt AC 78 ms 13800 KiB
test_30.txt AC 83 ms 13860 KiB
test_31.txt AC 79 ms 13684 KiB
test_32.txt AC 83 ms 13800 KiB
test_33.txt AC 87 ms 13680 KiB
test_34.txt AC 86 ms 13932 KiB
test_35.txt AC 83 ms 13932 KiB
test_36.txt AC 84 ms 13864 KiB
test_37.txt RE 101 ms 17324 KiB
test_38.txt RE 53 ms 17284 KiB
test_39.txt AC 84 ms 13860 KiB
test_40.txt AC 79 ms 13936 KiB
test_41.txt AC 92 ms 13808 KiB
test_42.txt RE 29 ms 17324 KiB
test_43.txt RE 30 ms 17208 KiB
test_44.txt RE 30 ms 17124 KiB
test_45.txt RE 29 ms 17240 KiB
test_46.txt RE 30 ms 17256 KiB
test_47.txt RE 30 ms 17324 KiB
test_48.txt AC 91 ms 13896 KiB
test_49.txt AC 87 ms 13632 KiB
test_50.txt AC 87 ms 13868 KiB
test_51.txt AC 86 ms 13800 KiB
test_52.txt AC 98 ms 13604 KiB
test_53.txt AC 102 ms 13916 KiB
test_54.txt AC 99 ms 13940 KiB
test_55.txt AC 98 ms 13868 KiB
test_56.txt AC 95 ms 13864 KiB
test_57.txt AC 98 ms 13872 KiB
test_58.txt AC 102 ms 13868 KiB
test_59.txt AC 99 ms 13852 KiB
test_60.txt AC 99 ms 13860 KiB
test_61.txt AC 84 ms 13860 KiB
test_62.txt AC 81 ms 13936 KiB
test_63.txt AC 85 ms 13920 KiB
test_64.txt AC 82 ms 13824 KiB
test_65.txt AC 85 ms 13692 KiB
test_66.txt AC 84 ms 13948 KiB
test_67.txt AC 83 ms 13940 KiB
test_68.txt AC 84 ms 13876 KiB
test_69.txt AC 85 ms 13820 KiB
test_70.txt AC 67 ms 15404 KiB
test_71.txt AC 67 ms 15500 KiB