Submission #71697810
Source Code Expand
#include <iostream>
#include <algorithm>
#include <deque>
#include <vector>
#include <queue>
#include <cmath>
#include <unordered_set>
#include <unordered_map>
#include <map>
#include <set>
using namespace std;
int n;
int a[300001], parent[300001], len[300001];
int find(int x) {
if (x == parent[x]) return x;
return parent[x] = find(parent[x]);
}
void merge(int x, int y) {
x = find(x);
y = find(y);
if (x == y) return;
parent[y] = x;
len[x] += len[y];
}
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> a[i];
parent[i] = i;
len[i] = 1;
}
for (int i = 1; i <= n; i++) {
merge(i, a[i]);
}
long long ret = 0;
for (int i = 1; i <= n; i++) {
if (parent[i] == i) {
ret += (long long)len[i] * (len[i] - 1) / 2;
}
}
cout << ret;
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Minimum Swap |
| User | cocoyi00 |
| Language | C++23 (GCC 15.2.0) |
| Score | 475 |
| Code Size | 875 Byte |
| Status | AC |
| Exec Time | 17 ms |
| Memory | 7288 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 475 / 475 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt, 01_random_29.txt, 01_random_30.txt, 01_random_31.txt, 01_random_32.txt, 01_random_33.txt, 01_random_34.txt, 01_random_35.txt, 01_random_36.txt, 01_random_37.txt, 01_random_38.txt, 01_random_39.txt, 01_random_40.txt, 01_random_41.txt, 01_random_42.txt, 01_random_43.txt, 01_random_44.txt, 01_random_45.txt, 01_random_46.txt, 01_random_47.txt, 01_random_48.txt, 01_random_49.txt, 01_random_50.txt, 01_random_51.txt, 01_random_52.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3608 KiB |
| 00_sample_01.txt | AC | 1 ms | 3532 KiB |
| 00_sample_02.txt | AC | 1 ms | 3504 KiB |
| 01_random_03.txt | AC | 16 ms | 7152 KiB |
| 01_random_04.txt | AC | 16 ms | 7252 KiB |
| 01_random_05.txt | AC | 16 ms | 7140 KiB |
| 01_random_06.txt | AC | 16 ms | 7136 KiB |
| 01_random_07.txt | AC | 16 ms | 7252 KiB |
| 01_random_08.txt | AC | 16 ms | 7216 KiB |
| 01_random_09.txt | AC | 16 ms | 7124 KiB |
| 01_random_10.txt | AC | 16 ms | 7148 KiB |
| 01_random_11.txt | AC | 16 ms | 7196 KiB |
| 01_random_12.txt | AC | 16 ms | 7100 KiB |
| 01_random_13.txt | AC | 16 ms | 7124 KiB |
| 01_random_14.txt | AC | 16 ms | 7200 KiB |
| 01_random_15.txt | AC | 16 ms | 7136 KiB |
| 01_random_16.txt | AC | 9 ms | 5564 KiB |
| 01_random_17.txt | AC | 9 ms | 5436 KiB |
| 01_random_18.txt | AC | 2 ms | 3868 KiB |
| 01_random_19.txt | AC | 4 ms | 4460 KiB |
| 01_random_20.txt | AC | 16 ms | 7136 KiB |
| 01_random_21.txt | AC | 17 ms | 7124 KiB |
| 01_random_22.txt | AC | 16 ms | 7252 KiB |
| 01_random_23.txt | AC | 16 ms | 7104 KiB |
| 01_random_24.txt | AC | 16 ms | 7148 KiB |
| 01_random_25.txt | AC | 16 ms | 7144 KiB |
| 01_random_26.txt | AC | 16 ms | 7112 KiB |
| 01_random_27.txt | AC | 16 ms | 7136 KiB |
| 01_random_28.txt | AC | 16 ms | 7136 KiB |
| 01_random_29.txt | AC | 16 ms | 7216 KiB |
| 01_random_30.txt | AC | 16 ms | 7144 KiB |
| 01_random_31.txt | AC | 16 ms | 7288 KiB |
| 01_random_32.txt | AC | 16 ms | 7252 KiB |
| 01_random_33.txt | AC | 16 ms | 7136 KiB |
| 01_random_34.txt | AC | 16 ms | 7096 KiB |
| 01_random_35.txt | AC | 15 ms | 7196 KiB |
| 01_random_36.txt | AC | 14 ms | 7136 KiB |
| 01_random_37.txt | AC | 7 ms | 5180 KiB |
| 01_random_38.txt | AC | 9 ms | 5588 KiB |
| 01_random_39.txt | AC | 10 ms | 5728 KiB |
| 01_random_40.txt | AC | 16 ms | 7020 KiB |
| 01_random_41.txt | AC | 5 ms | 4656 KiB |
| 01_random_42.txt | AC | 7 ms | 5020 KiB |
| 01_random_43.txt | AC | 3 ms | 3960 KiB |
| 01_random_44.txt | AC | 8 ms | 5308 KiB |
| 01_random_45.txt | AC | 6 ms | 4844 KiB |
| 01_random_46.txt | AC | 12 ms | 7144 KiB |
| 01_random_47.txt | AC | 12 ms | 7196 KiB |
| 01_random_48.txt | AC | 11 ms | 7152 KiB |
| 01_random_49.txt | AC | 12 ms | 7088 KiB |
| 01_random_50.txt | AC | 12 ms | 7088 KiB |
| 01_random_51.txt | AC | 12 ms | 7172 KiB |
| 01_random_52.txt | AC | 12 ms | 7152 KiB |