Submission #962236

#TimeUsernameProblemLanguageResultExecution timeMemory
962236NValchanovArt Class (IOI13_artclass)C++17
100 / 100
67 ms8424 KiB
#include <bits/stdc++.h> #include "artclass.h" using namespace std; typedef long long ll; const ll MAXN = 512; int a[MAXN][MAXN][3]; ll get_noise(ll i1, ll j1, ll i2, ll j2) { ll noiseR = abs(a[i1][j1][0] - a[i2][j2][0]); ll noiseG = abs(a[i1][j1][1] - a[i2][j2][1]); ll noiseB = abs(a[i1][j1][2] - a[i2][j2][2]); return noiseR + noiseG + noiseB; } int style(int n, int m, int R[500][500], int G[500][500], int B[500][500]) { for(int i = 0; i < n; i++) { for(int j = 0; j < m; j++) { a[i][j][0] = R[i][j]; a[i][j][1] = G[i][j]; a[i][j][2] = B[i][j]; } } ll noise_sum = 0; for(int i = 0; i < n; i++) { for(int j = 0 ; j < m; j++) { if(i != 0) noise_sum += get_noise(i, j, i - 1, j); if(j != 0) noise_sum += get_noise(i, j, i, j - 1); if(i != 0 && j != 0) noise_sum += get_noise(i, j, i - 1, j - 1); } } ll average_noise = noise_sum / (n * m); if(average_noise <= 36) return 4; else if(average_noise <= 78) return 1; else if(average_noise <= 192) return 2; else return 3; } /** int main() { freopen("style-4-2.txt", "r", stdin); freopen("output.txt", "w", stdout); int n,m; cin >> n >> m; for(int i = 0; i < n; i++) { for(int j = 0; j < m; j++) { cin >> r[i][j] >> g[i][j] >> b[i][j]; } } cout << style(n,m,r,g,b) << endl; return 0; } */
#Verdict Execution timeMemoryGrader output
Fetching results...