QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#572879 | #9310. Permutation Counting 4 | windStrider | WA | 84ms | 7568kb | C++20 | 2.2kb | 2024-09-18 16:39:14 | 2024-09-18 16:39:15 |
Judging History
answer
#include <bits/stdc++.h>
#define IOS1 std::ios::sync_with_stdio(false)
#define IOS2 std::cin.tie(nullptr)
#define mode1 1
#define mode2 1
using i64 = long long;
using ui64 = unsigned long long;
constexpr i64 INF = 0x3f3f3f3f3f3f3f3f;
constexpr int inf = 1e9;
constexpr int mod = 1e9 + 7;
template<class T1, class T2> std::istream& operator>>(std::istream& cin, std::pair<T1, T2>& a) { return cin >> a.first >> a.second; };
template<class T1, class T2> std::ostream& operator<<(std::ostream& cout, std::pair<T1, T2>& a) { return cout << a.first << ' ' << a.second; };
template<class T> std::ostream& operator<<(std::ostream& cout, std::vector<T>& a)
{
for (int i = 0; i < a.size(); ++i)
cout << a[i] << " \n"[i == a.size() - 1];
return cout;
}
inline int read()
{
int x = 0, f = 1;
char ch = getchar();
while (ch < '0' || ch>'9')
{
if (ch == '-')
f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9')
x = x * 10 + ch - '0', ch = getchar();
return x * f;
}
inline void write(int x)
{
if (x < 0)
putchar('-'), x = -x;
if (x > 9)
write(x / 10);
putchar(x % 10 + '0');
return;
}
static constexpr int N = 1e6;
int fa[N + 2];
int find(int v)
{
if (fa[v] == v) return v;
int u = find(fa[v]);
fa[v] = u;
return u;
}
void clear(int n)
{
for (int i = 0; i < n + 2; ++i) fa[i] = i;
}
void init_()
{
for (int i = 0; i < N + 2; ++i) fa[i] = i;
}
class Solution
{
public:
void solve()
{
int n;
std::cin >> n;
bool ans = 1;
for (int i = 0; i < n; ++i)
{
int a, b;
std::cin >> a >> b;
++b;
int x = find(a), y = find(b);
if (x == y) ans = 0;
else if (x == a) fa[a] = b;
else fa[b] = a;
}
std::cout << ans << "\n";
clear(n);
}
};
int main()
{
IOS1;
IOS2;
init_();
#if mode1
int t;
std::cin >> t;
while (t--)
{
Solution().solve();
}
#elif mode2
Solution().solve();
#endif
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 7544kb
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: -100
Wrong Answer
time: 84ms
memory: 7568kb
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 1 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 1 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 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 0 1 1 ...
result:
wrong answer 15th words differ - expected: '0', found: '1'