728x90
728x90

문제

2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 명의 학생들이 응시했다.

이들 중 점수가 가장 높은 명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라.

커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다.

 

입력

첫째 줄에는 응시자의 수 과 상을 받는 사람의 수 가 공백을 사이에 두고 주어진다.

둘째 줄에는 각 학생의 점수 가 공백을 사이에 두고 주어진다.

 

출력

상을 받는 커트라인을 출력하라.

 

제한

  •  1

 

예제 입력 1

5 2
100 76 85 93 98

 

예제 출력 1 

98

시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다.

 

출처

  • University > 연세대학교 미래캠퍼스 > 2022 연세대학교 미래캠퍼스 슬기로운 코딩생활 B번

 

알고리즘 분류

  • 구현
  • 정렬

 

문제 출처

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

 

25305번: 커트라인

시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다.

www.acmicpc.net

 


 

문제 해결 방법

  • 정렬 함수(@sort()@)을 이용하여 간단한게 문제를 해결하였다.

 

코드

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int N, k, x;
vector<int> nums;

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

    cin >> N >> k;

    for (int i = 0; i < N; i++) {
        cin >> x;

        nums.push_back(x);
        sort(nums.begin(), nums.end());    // 오름차순 정렬
    }

    for (int i = 0; i < N; i++) {
        if (i == N - k) {
            cout << nums[i] << '\n';
        }
    }
    
    return 0;
}

 

채점 결과

 

참고

  • [단계별로 풀어보기] > [정렬]
  • 브론즈II
728x90
728x90

'Problem Solving > BOJ' 카테고리의 다른 글

[BOJ-11399][C++] ATM  (0) 2023.02.09
[BOJ-1931][C++] 회의실 배정  (0) 2023.02.06
[BOJ-11047][C++] 동전 0  (2) 2023.02.06
[BOJ-2751][C++] 수 정렬하기 2  (0) 2023.02.04
[BOJ-2587][C++] 대표값2  (0) 2023.02.04
[BOJ-2750][C++] 수 정렬하기  (0) 2023.02.04
[BOJ-10757][C++] 큰 수 A+B  (0) 2023.02.04
[BOJ-5597][C++] 과제 안 내신 분..?  (0) 2023.02.03