QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#609215 | #9310. Permutation Counting 4 | DarksideCoder | RE | 114ms | 3980kb | C++14 | 753b | 2024-10-04 11:17:11 | 2024-10-04 11:17:12 |
Judging History
answer
#include<bits/stdc++.h>
using std::vector;
#define fn std::function
int n;
void Solve(){
scanf("%d",&n);
vector<int>Dad;Dad.reserve(2*n);
fn<void()> Init=[&]() {
for(int i=1;i<=n;i++)
Dad[i]=i;
};
fn<int(int)> Gd=[&](int a){
return (Dad[a]==a)?a:Dad[a]=Gd(Dad[a]);
};
fn<void(int,int)> Us=[&](int a,int b){
a=Gd(a);b=Gd(b);
if(a!=b)Dad[a]=b;
};
Init();
bool flag=false;
for(int i=1;i<=n;i++){
int a,b;
scanf("%d%d",&a,&b);
a=Gd(a-1);b=Gd(b);
if(a==b)flag=true;
Us(a,b);
}
if(flag)puts("0");
else puts("1");
}
int main(){
#ifdef LOCAL
freopen("In.txt","r",stdin);
freopen("Out.txt","w",stdout);
#endif
int Task;scanf("%d",&Task);
while(Task--){Solve();}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3980kb
input:
4 5 1 2 1 5 1 2 1 2 2 2 5 1 1 2 4 2 3 5 5 3 4 5 3 5 1 2 3 4 3 5 3 3 5 1 5 1 4 4 5 5 5 1 2
output:
0 1 0 0
result:
ok 4 tokens
Test #2:
score: 0
Accepted
time: 114ms
memory: 3616kb
input:
66725 14 7 7 4 6 7 8 8 13 2 13 6 13 6 10 14 14 1 10 9 11 7 9 3 8 4 12 5 12 12 2 6 3 6 7 11 2 5 1 1 6 12 8 12 2 3 7 9 7 8 1 10 1 4 10 4 8 4 4 6 10 9 10 2 3 2 7 1 3 3 4 2 2 3 10 20 3 12 10 14 19 20 19 20 1 9 7 9 13 16 17 17 16 18 2 11 5 19 6 17 11 17 3 6 3 11 7 20 8 17 3 18 10 15 9 20 16 5 10 2 10 2 1...
output:
1 1 0 0 1 0 1 1 0 1 1 0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0 0 1 0 1 1 0 1 1 1 0 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 1 0 1 1 ...
result:
ok 66725 tokens
Test #3:
score: -100
Runtime Error
input:
6655 155 28 58 68 100 6 47 98 109 11 133 38 153 73 118 126 153 24 43 71 118 109 135 6 104 40 101 24 139 100 136 135 136 40 148 70 117 92 124 63 64 45 55 16 128 65 86 20 49 126 138 30 141 127 146 21 155 49 139 27 34 39 145 20 53 12 41 3 107 38 78 106 109 61 102 20 99 134 135 23 99 10 69 105 113 36 75...