QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#568183#9310. Permutation Counting 4MonikaRE 0ms0kbC++171.4kb2024-09-16 15:30:292024-09-16 15:30:32

Judging History

你现在查看的是最新测评结果

  • [2024-09-18 14:56:40]
  • hack成功,自动添加数据
  • (/hack/835)
  • [2024-09-18 14:41:06]
  • hack成功,自动添加数据
  • (/hack/831)
  • [2024-09-17 12:14:52]
  • hack成功,自动添加数据
  • (/hack/825)
  • [2024-09-16 15:30:32]
  • 评测
  • 测评结果:RE
  • 用时:0ms
  • 内存:0kb
  • [2024-09-16 15:30:29]
  • 提交

answer

#pragma GCC optimize(1)
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")

#include <bits/stdc++.h>
#define min(a,b) (a > b ? b : a)
#define max(a,b) (a < b ? b : a)

#define YES (cout << "YES" << endl)
#define NO (cout << "NO" << endl)
#define all(x) (x).begin(), (x).end()
#define endl '\n'
#define mem(a,b) memset(a,b,sizeof(a))
#define rrep(a, b, c) for (a = b; a >= c; a--)
#define rep(a, b, c) for (a = b; a <= c; a++)
#define lowbit(a) (a & (-a))
#define int long long
#define IOS ios::sync_with_stdio(0); cout.tie(0);

using namespace std;

typedef double db;
typedef pair<int,int> pii;
typedef array <int,3> a3;

const db eps = 1e-7;
const int inf = 0x3f3f3f3f3f3f3f3f;
const int N = 1e6 + 10;

int n;
int p[N];

int find(int x){
    if (p[x] != x) p[x] = find(p[x]);
    return p[x];
}

void merge(int a,int b){
    a = find(a);
    b = find(b);

    if (a != b){
        p[a] = b;
    }
}

void solve(){
    cin >> n;

    int i;
    rep(i,1,n + 1){
        p[i] = i;
    }

    rep(i,1,n){
        int x,y;
        cin >> x >> y;
        merge(x, y + 1);
    }
    
    int pos = find(1);
    rep(i,1,n + 1){
        if (find(i) != pos){
            cout << 0 << endl;
            return;
        }
    }

    cout << 1 << endl;
}   

signed main(){
    cin.tie(0);

    int T = 1;
    cin >> T;

    while (T --){
        solve();
    }

    system("pause");
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Dangerous Syscalls

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:


result: