Baekjoon/단계별로 풀어보기

[BOJ/백준] 2562번 최댓값 C++ 문제 풀이

728x90

단계별로 풀어보기 - 1차원 배열 - [2단계] 2562번

문제

문제 링크 : www.acmicpc.net/problem/2562

 

2562번: 최댓값

9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어

www.acmicpc.net

입력 복사 : 

3 29 38 12 57 74 40 85 61

 

풀이

지난 문제에서는 sort함수를 통해 배열을 정렬했지만,

최댓값의 위치를 알아야 하는 이번 문제에서는 그러한 방식을 사용하기는 어렵습니다.

따라서 입력 받은 수를 maxvalue에 저장된 값보다 클 경우,

값을 maxvalue에 저장하고 순서 또한 maxindex에 저장하였습니다.

 

CODE

#include <iostream>
using namespace std;

int main() {
	int num[9];
	int maxvalue = 0, maxindex = 0;
	for (int i = 0; i < 9; i++) {
		cin >> num[i];
		if (maxvalue < num[i]) {
			maxvalue = num[i];
			maxindex = i;
		}
	}
	cout << maxvalue << endl << maxindex + 1;
}

 

결과

728x90