# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
790206 | kekw_orz | Art Class (IOI13_artclass) | C++14 | 48 ms | 5032 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>
#include "artclass.h"
using namespace std;
void debug_out(){cerr << endl;}
template<typename Head, typename... Tail>
void debug_out(Head H, Tail... T){
cerr << H << ' ';
debug_out(T...);
}
#define debug(...) cerr << "(" << #__VA_ARGS__ << "): ", debug_out(__VA_ARGS__)
int style(int n, int m, int r[500][500], int g[500][500], int b[500][500]) {
double diff = 0, diff2 = 0;
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
if (i){
diff += abs(r[i][j] - r[i-1][j]) + abs(g[i][j] - g[i-1][j]) + abs(b[i][j] - b[i-1][j]);
diff2 += abs(r[i][j] - r[i-1][j]) * abs(r[i][j] - r[i-1][j]);
diff2 += abs(g[i][j] - g[i-1][j]) * abs(g[i][j] - g[i-1][j]);
diff2 += abs(b[i][j] - b[i-1][j]) * abs(b[i][j] - b[i-1][j]);
}
if (j){
diff += abs(r[i][j] - r[i][j-1]) + abs(g[i][j] - g[i][j-1]) + abs(b[i][j] - b[i][j-1]);
diff2 += abs(r[i][j] - r[i][j-1]) * abs(r[i][j] - r[i][j-1]);
diff2 += abs(g[i][j] - g[i][j-1]) * abs(g[i][j] - g[i][j-1]);
diff2 += abs(b[i][j] - b[i][j-1]) * abs(b[i][j] - b[i][j-1]);
}
}
}
diff /= (n*m);
diff2 /= (n*m);
if (diff <= 15) return 4;
if (diff <= 20 && diff2 <= 400) return 4;
if (diff <= 50) return 1;
if (diff <= 100) return 2;
if (diff2 <= 3000) return 2;
return 3;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |