본문 바로가기

Programming/BaekJoon

[C++] 백준 8979번 : 올림픽


https://www.acmicpc.net/problem/8979




#include <iostream>

using namespace std;

int main() {

int n, k;

cin >> n >> k;

int **Nation = new int*[n];

for (int i = 0; i < n; i++)

*(Nation + i) = new int[5];

// Nation[i][5] : 금, 은, 동, 등수, 나라이름

int a;

for (int i = 0; i < n; i++)

{

cin >> Nation[i][4];

for (int j = 0; j < 3; j++)

cin >> Nation[i][j];

}


int cnt = 1; // 자신보다 더 잘한 나라 수 cnt

for (int i = 0; i < n; i++) { // 나라별 등수 부여

for (int j = 0; j < n; j++)

{

if (i != j) {

if (Nation[i][0] < Nation[j][0])

cnt++;

else if (Nation[i][0] == Nation[j][0])

{

if (Nation[i][1] < Nation[j][1])

cnt++;

else if (Nation[i][1] == Nation[j][1])

{

if (Nation[i][2] < Nation[j][2])

cnt++;

}

}

}

}

Nation[i][3] = cnt;

cnt = 1;

}


for (int i = 0; i < n; i++) {

if (Nation[i][4] == k)

{

cout << Nation[i][3];

break;

}


}

}