[백준 C++] 20053. 최소, 최대2

garden.97·2022년 1월 10일
0

백준 C++

목록 보기
28/28
post-thumbnail

문제 링크

문제

N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.


입력

첫째 줄에 테스트 케이스의 개수 T (1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있다.

각 테스트 케이스의 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.


출력

각 테스트 케이스마다 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 한 줄에 하나씩 차례대로 출력한다.


예제 입력 / 출력

// 예제 입력 1
3
5
20 28 22 25 21
5
30 21 17 25 29
5
20 10 35 30 7
// 예제 출력 1
20 28
17 30
7 35

풀이

📍 알고리즘

  • 숫자를 입력받을 때 마다 max, min값과 비교하면서 값을 업데이트 해준다.

#include <iostream>
#include <vector>

using namespace std;

int main(void) {
	
	ios::sync_with_stdio(false);
	cin.tie(NULL);

	int N, T, max, min, temp;

	cin >> T;

	for (int i = 0; i < T; i++) {
		max = -1000000;
		min = 1000000;

		cin >> N;

		for (int j = 0; j < N; j++) {
			cin >> temp;
			if (max < temp) max = temp;
			if (min > temp) min = temp;
		}

		cout << min << " " << max << "\n";

	}

}

profile
who wants to become a backend developer💪👩‍💻

0개의 댓글