답안 #20209

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
20209 2016-04-08T14:59:50 Z wjdtmddnr24 컬러볼 (KOI15_ball) C++
25 / 25
136 ms 5 KB
#include <stdio.h>
#include <algorithm>
using namespace std;
#define N 201505

int n, s[N], total;
int size[N], color[N], cnt;
struct A{
	int size, color, index;
	int sum;
}a[N];
bool comp(A x, A y){
	return x.size < y.size;
}
bool comp2(A x, A y){
	return x.index < y.index;
}
int main(){
	scanf("%d", &n);
	for (int i = 1; i <= n; i++)
	{
		scanf("%d %d", &a[i].color, &a[i].size);
		a[i].index = i;
	}
	sort(a + 1, a + n + 1, comp);
	for (int i = 1; i <= n; i++)
	{
		if (a[i - 1].size < a[i].size)
		{
			for (int j = 1; j <= cnt; j++)
			{
				s[color[j]] += size[j];
				total += size[j];
			}
			cnt = 0;
		}
		cnt++;
		size[cnt] = a[i].size;
		color[cnt] = a[i].color;
		a[i].sum = total - s[a[i].color];
	}
	sort(a + 1, a + n + 1, comp2);
	for (int i = 1; i <= n; i++)
	{
		printf("%d ", a[i].sum);
	}
	return 0;
}

Compilation message

ball.cpp: In function 'int main()':
ball.cpp:19:17: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &n);
                 ^
ball.cpp:22:42: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d", &a[i].color, &a[i].size);
                                          ^
# 결과 실행 시간 메모리 Grader output
1 Correct 136 ms 5 KB Output is correct
2 Correct 124 ms 5 KB Output is correct
3 Correct 123 ms 5 KB Output is correct
4 Correct 118 ms 5 KB Output is correct
5 Correct 118 ms 5 KB Output is correct
6 Correct 4 ms 5 KB Output is correct
7 Correct 4 ms 5 KB Output is correct
8 Correct 4 ms 5 KB Output is correct
9 Correct 4 ms 5 KB Output is correct
10 Correct 4 ms 5 KB Output is correct
11 Correct 109 ms 5 KB Output is correct
12 Correct 109 ms 5 KB Output is correct
13 Correct 109 ms 5 KB Output is correct
14 Correct 110 ms 5 KB Output is correct
15 Correct 109 ms 5 KB Output is correct
16 Correct 106 ms 5 KB Output is correct
17 Correct 106 ms 5 KB Output is correct
18 Correct 112 ms 5 KB Output is correct
19 Correct 115 ms 5 KB Output is correct
20 Correct 123 ms 5 KB Output is correct