Submission #65923

#TimeUsernameProblemLanguageResultExecution timeMemory
65923asonetuArt Class (IOI13_artclass)C++14
0 / 100
121 ms66560 KiB
#include "artclass.h"

int styleRGB[4][3] = {
	{194, 170, 142},
	{107, 97, 62},
	{151, 135, 109},
	{171, 80, 43}
};

int sum[3];
int average[3];
int distSum[4];

int style(int H, int W, int R[500][500], int G[500][500], int B[500][500]) {
	
	// R, B, G average 값을 구하자.
	for(int i=0; i<3; i++) {
		sum[i] = 0;
		average[i] = 0;
	}
	
	for(int i=0; i<4; i++) {
		distSum[i] = 0;
	}
	
	for(int i=0; i<H; i++) {
		for(int j=0; j<W; j++) {
			sum[0] = sum[0] + R[i][j];
			sum[1] = sum[1] + G[i][j];
			sum[2] = sum[2] + B[i][j];
		}
	}
	
	average[0] = sum[0] / (H*W);
	average[1] = sum[1] / (H*W);
	average[2] = sum[2] / (H*W);
	
	
	int dist;
	for(int i=0; i<4; i++) {
		for(int j=0; j<3; j++) {
			dist = styleRGB[i][j] - average[j];
			if(dist < 0) dist = dist * -1;
			distSum[i] = distSum[i] + dist;	
		}
	}
	
	int result = 0;
	int min = 999;
	for(int i=0; i<4; i++) {
		if(min > distSum[i]) {
			min = distSum[i];
			result = i+1;
		}
	}
	
	return result;
}
#Verdict Execution timeMemoryGrader output
Fetching results...