[백준 BOJ] 2562번 최댓값 (C언어)

2022. 1. 24. 14:42PS (Program Solving)/BOJ (백준)

문제 설명

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

 

2562번: 최댓값

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

www.acmicpc.net

백준 BOJ 2562번 최댓값 문제 사진

 

접근 방법 - 배열을 이용한 기본 문제

백준 2562번 문제는 배열을 이용하여 최댓값을 구하는 문제인 것으로 추측된다.

해당 문제에선 최댓값뿐만 아니라 해당 값이 존재하는 위치까지 묻고 있기 때문이다.

따라서 필자는, 최댓값과 해당 값이 위치하는 배열 번호를 수시로 갱신하면서 해답을 구하였다.

필자는 아래의 순서대로 코드를 작성하여 문제를 해결하였다.

 

코드의 실행 순서

1) 배열 선언한 뒤, 입력값을 하나씩 받는다.

 

2) 최댓값 저장하는 변수를 0으로 초기화하며 선언하고 위치값 저장하는 변수도 함께 선언한다.

 

3) 반복문을 실행하여 최댓값을 탐색한다.

위 과정을 실행할 시, 최댓값과 위치값을 동시에 갱신한다.

 

4) 반복문 실행이 끝나면, 최종적으로 저장된 2개의 값을 차례로 출력한 뒤 실행 종료한다.

반응형

 

성공한 코드

#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable: 4996)
#include <stdio.h>

//백준 2562번 코드
int main() {
	int n[9];
	for (int i = 0; i < 9; i++) {
		scanf("%d", &n[i]);
	}

	int max = 0;
	int maxindex = 0;
	for (int i = 0; i < 9; i++) {
		if (max < n[i]) {
			max = n[i];
			maxindex = i+1;
		}
	}

	printf("%d\n%d", max, maxindex);
}

 

제출 결과

백준 BOJ 2562번 최댓값 문제 C 제출 결과

(2021.09.12 백준 2562번 문제 제출 결과)

반응형