티스토리 뷰
https://www.acmicpc.net/problem/10818
10818번: 최소, 최대
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
www.acmicpc.net
문제
N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
출력
첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.
제한
시간 제한 : 1초 / 메모리 제한 : 256MB
1. 어떻게 풀까?
1-1) 최솟값과 최댓값만 얻으면 된다.
먼저, N의 최대크기만큼의 int형 배열을 선언하고 입력된 수를 각각 저장하자.
C++ STL의 헤더 <algorithm.h>에는 max_element와 min_element라는 함수가 있다.
간략하게 설명하자면 두 함수는 최댓값과 최솟값을 반환하는 함수이다. 이를 활용하면 쉽게 풀 수 있는 문제.
자세한 사용법은 두 함수의 링크에서 (max_element, min_element) 에서 알 수 있다.
이후 최댓값과 최솟값을 출력하면 맞았습니다! 를 받을 수 있는 쉬운 문제.
2) 최종 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <bits/stdc++.h> using namespace std; int arr[1000000]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N; cin >> N; for (int i = 0; i < N; i++){ cin >> arr[i]; } cout << *min_element(arr, arr+N) << ' ' << *max_element(arr, arr+N); return 0; } | cs |
'PS 이야기 > PS - BOJ' 카테고리의 다른 글
[BOJ] 10871번 - X보다 작은 수 (0) | 2022.04.12 |
---|---|
[BOJ] 10869번 - 사칙연산 (0) | 2022.04.08 |
[BOJ] 10809번 - 알파벳 찾기 (0) | 2022.04.04 |
[BOJ] 9498번 - 시험 성적 (0) | 2022.04.04 |
[BOJ] 8958번 - OX퀴즈 (0) | 2022.04.04 |
댓글
- Total
- Today
- Yesterday
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
TAG
- 프로그래밍
- Python
- GDSC
- 사칙연산
- for
- 문자열
- 함수
- C++
- 백준
- bomblab
- react
- effective async
- 시간복잡도
- Network
- equal
- MIN
- 제어문
- 수학
- docker
- Proactor
- BOJ
- 헤더
- BRONZE
- 구현
- JS
- C
- Max
- CSAPP
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
글 보관함