코딩테스트/📗 백준 (BOJ)
[C++] 백준 2693번 N번째 큰 수
릿99
2021. 8. 14. 17:19
728x90
반응형
1. 문제이해
https://www.acmicpc.net/problem/2693
2693번: N번째 큰 수
첫째 줄에 테스트 케이스의 개수 T(1 <= T <= 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 배열 A의 원소 10개가 공백으로 구분되어 주어진다. 이 원소는 1보다 크거나 같고, 1,000보
www.acmicpc.net
테스트케이스를 입력받아 테스트 케이스의 갯수만큼 10개의 원소를 입력받은 후,
각 테스트케이스마다 입력받은 수들 중
3번째로 큰 수를 출력하는 알고리즘을 구현하는 것이 목표이다.
2. 문제풀이
문제 그대로, 각 테스트케이스마다 10개의 원소들을 입력받아
원소들 중 3번째로 큰 수를 출력하면 된다.
즉, 오름차순으로 정렬했을때, 8번째 수를 출력하면 되는 문제이다.
3. 소스코드
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int testcase;
int arr[10] = { 0, };
cin >> testcase; // 테스트케이스의 갯수
for (int j = 0; j < testcase; j++) {
for (int i = 0; i < 10; i++) {
cin >> arr[i];
}
sort(arr, arr + 10);
// 8번째 수 출력 (배열은 0부터 시작하므로 7)
cout << arr[7] << endl;
}
return 0;
}
코드로 구현하는것 또한 어렵지 않았다.
테스트케이스와 10개의 원소들을 입력받고, 내장함수를 이용해 정렬 후 8번째 원소를 출력해주었다.
(배열은 0부터 시작하므로, arr[7]가 8번째 원소에 해당)
오랜만에 하는 문제는 조금 쉬운거해야지..암암...
실버4 문제치고는 굉장히 쉬웠던 문제였다. (개인적인 생각이지만..)
그동안 했던 문제들은 정렬만 하고 끝나는게 아니라
다른 부가적인 요소들이 많았었는데..😭
728x90
반응형