백준 8979번 : 올림픽

M1ndCon·2024년 7월 4일
0

Algorithm

목록 보기
20/32

  • Solved.ac 기준 : 실버 5
  • 사용언어 C++

문제 해석 및 풀이

조건 1 : 금메달 수 많을 수록
조건 2 : 금메달 수 동일할 시 은메달 수 많을 수록
조건 3 : 금,은 메달 수가 동일할 시 동메달 수 많을 수록

  • 메달 조건에 따른 순위를 따로 입력하여 최고 순위가 아닐 때 해당 값을 ++해줘 순위 정보를 저장하여 출력
#include <iostream>
using namespace std;

int main() {
    cin.tie(NULL);
    ios_base::sync_with_stdio(false);

    int n, k;

    cin >> n >> k;

    int arr[1000][5];

    for (int i = 0; i < n; i++) {
        for (int j = 0; j < 4; j++) {
            cin >> arr[i][j];
        }
        arr[i][4] = 1;
    }

    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            if (i != j) {
                if (arr[i][1] < arr[j][1]) {
                    arr[i][4]++;
                }
                else if (arr[i][1] == arr[j][1]) {
                    if (arr[i][2] < arr[j][2]) {
                        arr[i][4]++;
                    }
                    else if (arr[i][2] == arr[j][2]) {
                        if (arr[i][3] < arr[j][3]) {
                            arr[i][4]++;
                        }
                    }
                }
            }
        }
    }
    for (int i = 0; i < n; i++) {
        if (arr[i][0] == k) {
            cout << arr[i][4];
            break;
        }
    }


    return 0;
}
profile
게임 개발자 지망생

0개의 댓글