메뉴 건너뛰기

Programing

BAEKJOON

10800

관리자 2019.12.21 19:27 조회 수 : 8

C++

#include <cstdio>

#include <algorithm>

using namespace std;

struct Info{

    int C;

    int S;

    int t;

    bool operator < (const Info& info) const{

        return S<info.S;

    }

};

int N;

int C_size[200010];

int result[200010];

Info info[200010];

int main()

{

    scanf("%d",&N);

    for(int i=1;i<=N;i++){

        scanf("%d %d",&info[i].C,&info[i].S);

        info[i].t=i;

    }

    sort(info+1,info+N+1);

    int t_size=0;

    for(int i=1;i<=N;){

        int j;

        for(j=i;j<=N;j++){

            if(info[i].S!=info[j].S){

                break;

            }

            result[info[j].t]=t_size-C_size[info[j].C];

        }

        for(; i<j; i++)

        {

            t_size+=info[i].S;

            C_size[info[i].C]+=info[i].S;

        }

 

    }

    for(int i=1;i<=N;i++){

        printf("%d\n",result[i]);

    }

    return 0;

}

번호 제목 글쓴이 날짜 조회 수
공지 안내사항 관리자 2019.12.21 183
74 9663 관리자 2019.12.21 131
73 9345 관리자 2020.04.11 177
72 9019 관리자 2019.12.21 134
71 7569 관리자 2019.12.21 130
70 6987 관리자 2019.12.21 135
69 5842 관리자 2020.04.11 167
68 5625 관리자 2019.12.21 132
67 5419 관리자 2020.04.11 178
66 3392 관리자 2020.04.11 172
65 3019 관리자 2019.12.21 128
64 2933 관리자 2019.12.21 129
63 2931 관리자 2019.12.21 128
62 2836 관리자 2019.12.21 126
61 2667 관리자 2019.12.21 130
60 2636 관리자 2019.12.21 127
59 2629 관리자 2020.04.11 164
58 2615 관리자 2019.12.21 127
57 2610 관리자 2020.04.11 164
56 2606 관리자 2019.12.21 127
55 2585 관리자 2019.12.21 135
54 2578 관리자 2019.12.21 127
53 2573 관리자 2020.04.11 167
52 2557 관리자 2019.12.21 127
51 2512 관리자 2019.12.21 130
50 2504 관리자 2020.04.11 163
49 2481 관리자 2019.12.21 128
48 2478 관리자 2020.04.11 164
47 2473 관리자 2020.04.11 169
46 2470 관리자 2020.04.11 167
위로