문제
9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
입력
첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.
ex)
3
29
38
12
57
74
40
85
61
출력
첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.
ex)
85
8
코드
#include<iostream>
#include <algorithm> // sort() 사용
using namespace std;
class exam {
public:
void test() {
int input;
int count = 1;
int num1[9],num2[9];
for (int i = 0; i < 9; i++) {
cin >> input;
num1[i] = input;
num2[i] = num1[i];
}
sort(num2, num2 + 9); // 오름차순 정렬
cout << num2[8]<<endl;
for (int i = 0; i < 9; i++) {
if (num1[i] == num2[8]) {
cout << count;
break;
}
else {
count = count + 1;
}
}
}
};
int main()
{
exam ex = exam();
ex.test();
return 0;
}
'C++ > 백준 C++' 카테고리의 다른 글
[C/C++] 백준 2739번 구구단 (0) | 2023.05.25 |
---|---|
[C/C++] 백준 10871번 X보다 작은 수 (0) | 2023.05.24 |
[C/C++] 백준 2439번 별 찍기 - 2 (0) | 2023.05.23 |
[C/C++] 백준 2438번 별 찍기 - 1 (0) | 2023.05.23 |
[C/C++] 백준 2588번 곱셈 (0) | 2023.05.23 |