| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1313790 | kawhiet | Art Class (IOI13_artclass) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
#include "artclass.h"
using namespace std;
int n, m;
vector<vector<int>> r, g, b;
double get(double tot, double cnt) {
return 100.0 / tot * cnt;
}
bool field() {
int bad = 0;
for (int i = 0; i < n; i++) {
int cnt = 1, mx = 1;
vector<int> v;
for (int j = 1; j < m; j++) {
int d1 = abs(r[i][j] - r[i][j - 1]);
int d2 = abs(g[i][j] - g[i][j - 1]);
int d3 = abs(b[i][j] - b[i][j - 1]);
if (max({d1, d2, d2}) > 30) {
v.push_back(cnt);
cnt = 1;
} else {
cnt++;
}
mx = max(mx, cnt);
}
v.push_back(cnt);
bool ok = 1;
for (int i = 0; i < v.size() / 4; i++) {
if (v[i] == mx) {
ok = 0;
}
if (v[v.size() - i - 1] == mx) {
ok = 0;
}
}
if (get(m, mx) < 40 || !ok) {
bad++;
}
}
cerr << bad << ' ';
return bad <= 20;
}
