- 오늘도 나동빈님의 서적에 나와있는 문제를 풀어보았습니다.
입력 예시1 3 3 3 1 2 4 1 4 2 2 2 출력 : 2 입력 예시2 2 4 7 3 1 8 3 3 3 4 출력 : 3 |
이 문제의 핵심은 각 행마다 가장 작은 수를 찾은 후, 그 중에서 가장 큰 수를 찾는 문제이다.
코드로 작성 해보았습니다.
#include<bits/stdc++.h> using namespace std; int arr[100][100]; int main() { int n, m,cmp=10001; cin >> n >> m; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> arr[i][j]; } } for (int i = 0; i < n; i++) { sort(arr[i], arr[i] + m); } for (int i = 0; i < n; i++) { if (cmp< arr[i][0]) { cmp = arr[i][0]; } } cout << cmp; } |
- 먼저, 2차원 배열에 입력 받은 후, 입력 받은 2차원 배열들의 행의 요소들 끼리 정렬합니다.
- 그 이후에 행끼리 정렬된 요소들을 비교하여 가장 큰 수를 출력합니다.
'Algorithm > greedy' 카테고리의 다른 글
[백준] 알고리즘 1541번 - 잃어버린 괄호 문제 (0) | 2021.02.08 |
---|---|
[백준] 알고리즘 11399번 - ATM 문제 (0) | 2021.02.08 |
[백준] 알고리즘 11047번 - 동전 0 문제 (0) | 2021.02.07 |
[백준] 알고리즘 5585번 - 거스름돈 문제 (0) | 2021.02.06 |
[알고리즘 문제] - C++ 그리디 알고리즘 문제 : 큰 수의 법칙 (0) | 2020.10.29 |