문제 출처: www.acmicpc.net/problem/10818
10818번: 최소, 최대
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
www.acmicpc.net
1. 코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
using namespace std; | |
int main(void) | |
{ | |
int n, max, min, a; | |
cin >> n; | |
for(int i = 0; i < n; i++) | |
{ | |
cin >> a; | |
if(i == 0) | |
max = a, min = a; | |
if(max < a) | |
max = a; | |
if(min > a) | |
min = a; | |
} | |
cout << min << " " << max; | |
return 0; | |
} |
2. 풀이
int n, max, min, a;
cin >> n;
n은 반복의 횟수, max는 최댓값, min은 최솟값, a는 입력값이다. 그리고 먼저 반복을 해주기 전에 반복횟수를 알아야하기 때문에 n을 입력받는다.
for(int i = 0; i < n; i++)
i를 선언하여 n만큼 반복시킨다.
cin >> a;
그리고 a를 입력받는다.
if(i == 0)
max = a, min = a;
만약 처음 입력받는거라면 max와 min에 a의 값을 초기화시킨다.
if(max < a)
max = a;
if(min > a)
min = a;
만약 a의 값이 max보다 크면 a의 값을 max에 초기화시키고 마찬가지로 min의 값보다 a의 값이 더 작다면 a의 값을 min에 초기화시킨다.
cout << min << " " << max;
반복문이 끝난 뒤에 min의 값과 max의 값을 출력해준다.
'컴퓨터 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 2577번: 숫자의 개수 [C++] (0) | 2021.01.02 |
---|---|
백준 알고리즘 2562번: 최댓값 (0) | 2020.12.26 |
백준 알고리즘 10951번: A+B - 4 [C++] (0) | 2020.12.19 |
백준 알고리즘 10952번: A+B - 5 [C++] (0) | 2020.12.18 |
백준 알고리즘 10871번: X보다 작은 수 [C++] (0) | 2020.12.16 |