[C++] 백준 17140 - 이차원 배열과 연산
🔐 백준 17140 - 이차원 배열과 연산
https://www.acmicpc.net/problem/17140
🔑 풀이
이러한 시뮬레이션 유형의 문제들은 문제가 요구하는 것을 정확히 파악하고, 그에 맞는 함수를
차근차근 구현하면 된다. 문제에서 주어진 조건은 다음과 같다.
- 1초마다 R 연산 또는 C 연산을 수행한다.
- if 행의 개수 >= 열의 개수 => R 연산 (행 정렬)
- if 행의 개수 < 열의 개수 => C 연산 (열 정렬)
- 정렬 방법 : 기본적으로 숫자의 등장 횟수를 세야 함
- 수의 등장 횟수를 기준으로 오름차순 정렬
- 등장 횟수가 같다면 숫자 기준 오름차순 정렬
주어진 정렬 방법을 적용하기 위해 비교 함수 cmp를 사용하여 구현했으며, 행 크기와 열 크기를
한 사이클마다 비교하며, calculate 함수를 수행해 주었다. R 연산과 C 연산을 하는 함수를 하나의
함수로 만들고 인자로 어떤 연산인지를 알려주는 isRow 를 넘겨주어 각자를 계산하도록 구현하였다.
Leave a comment