# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
199758 | SamAnd | Checker (COCI19_checker) | C++17 | 1756 ms | 62152 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
const int N = 200005;
int n;
char a[N];
map<int, map<int, int> > c;
int l[N], r[N];
bool stg(int x)
{
if (c.find(l[x]) != c.end() && c[l[x]].find(r[x]) != c[l[x]].end())
return true;
return false;
}
int main()
{
//freopen("input.txt", "r", stdin);
scanf("%d", &n);
scanf("%d", &n);
scanf(" %s", (a + 1));
for (int i = 1; i < n; ++i)
{
c[i][i + 1] = (a[i] - '0');
c[i + 1][i] = (a[i] - '0');
}
c[n][1] = (a[n] - '0');
c[1][n] = (a[n] - '0');
for (int i = 0; i < n - 3; ++i)
{
int x, y, z;
scanf("%d%d%d", &x, &y, &z);
c[x][y] = z;
c[y][x] = z;
}
for (int i = 1; i < n; ++i)
r[i] = i + 1;
r[n] = 1;
l[1] = n;
for (int i = 2; i <= n; ++i)
l[i] = i - 1;
queue<int> q;
for (int i = 1; i <= n; ++i)
{
if (stg(i))
q.push(i);
}
bool z = true;
for (int ii = 0; ii < n - 3; ++ii)
{
if (q.empty())
{
printf("neispravna triangulacija\n");
return 0;
}
int x = q.front();
q.pop();
if (!stg(x))
{
printf("neispravna triangulacija\n");
return 0;
}
if (c[x][l[x]] == c[x][r[x]] || c[x][l[x]] == c[l[x]][r[x]] || c[x][r[x]] == c[l[x]][r[x]])
z = false;
r[l[x]] = r[x];
l[r[x]] = l[x];
if (stg(l[x]))
q.push(l[x]);
if (stg(r[x]))
q.push(r[x]);
}
if (!z)
printf("neispravno bojenje\n");
else
printf("tocno\n");
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |