[백준 BOJ] 10817번 세 수 (C++/cpp)
2022. 6. 22. 01:50ㆍPS (Program Solving)/BOJ (백준)
문제 설명
https://www.acmicpc.net/problem/10817
10817번: 세 수
첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100)
www.acmicpc.net
접근 방법 - 정렬 함수 사용의 기본 문제
백준의 10817번 문제는 정렬 함수를 이용하여 쉽게 해결할 수 있는 기본 문제이다.
해당 문제는, 입력받은 3개의 숫자들 중 두 번째로 큰 정수를 출력해야 하는 문제이다.
이는 즉, 오름차순으로 정렬하였을 때 중간에 위치한 숫자를 출력해야 한다는 설명과 동일하다고 볼 수 있다.
필자의 경우엔 정렬 함수 sort()를 사용하여 아주 쉽게 해결하였다.
간단한 정렬 문제는 웬만하면 sort() 함수로 해결이 가능하니 이 함수는 꼭 참고해보길 바란다.
필자는 아래의 순서대로 코드를 작성하여 문제를 해결하였다.
코드의 실행 순서
1) 3개의 숫자(arr)를 입력받는다.
2) sort() 함수를 이용해 arr의 배열값들을 정렬한다.
sort(array, array+length);
3) 배열의 중간값을 출력한 뒤, 실행 종료한다.
반응형
성공한 코드
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable: 4996)
#include <iostream>
#include <algorithm>
#define endl '\n'
using namespace std;
//백준 10817번 코드
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
int arr[3];
for (int i = 0; i < 3; i++) {
cin >> arr[i];
}
sort(arr, arr + 3);
cout << arr[1] << endl;
}
제출 결과
(2022.05.20 백준 10817번 문제 제출 결과)
반응형
'PS (Program Solving) > BOJ (백준)' 카테고리의 다른 글
[백준 BOJ] 5800번 성적 통계 (C++/cpp) (0) | 2022.07.02 |
---|---|
[백준 BOJ] 11721번 열 개씩 끊어 출력하기 (C++/cpp) (0) | 2022.06.27 |
[백준 BOJ] 2822번 점수 계산 (C++/cpp) (0) | 2022.06.22 |
[백준 BOJ] 9316번 Hello Judge (C++/cpp) (0) | 2022.06.21 |
[백준 BOJ] 1550번 16진수 (C++/cpp) (0) | 2022.06.21 |