반응형
문제
https://www.acmicpc.net/problem/2566
풀이
2차원 배열중 가장 큰 최대값과, 행과 열을 출력해주면 되는 문제입니다.
1차원 배열을 for문으로 돌면서 최댓값을 찾는것과 유사합니다. 단순히 2차원 배열로 바뀌었을 뿐입니다.
2차원 배열 -> 1차원 배열로 만들어주는 flatMap 고차함수를 사용해서 최댓값을 구할 수 있습니다.
저는 flatMap으로 최댓값을 구해준 후, 2차원 배열을 탐색해주면서 최댓값과 같다면 최댓값과 행과 열을 출력해주도록 구현했지만,
최댓값을 0으로 초기값을 준 후, 비교를 하면서 최댓값을 갱신해주고 최댓값이 갱신된다면, 행과 열의 값도 갱신해주는 방식으로 풀이해도 무방합니다.
소스코드
후기
2차원 배열을 순회하는 법에 대해 알고있다면 쉽게 풀 수 있는 문제인 것 같습니다.
flatMap 을 사용해 2차원 배열을 1차원 배열로 변환하는 방법을 알고있으면 좋을 것 같다는 생각이 들었습니다.
반응형
'PS > 백준' 카테고리의 다른 글
[BOJ] 백준 11382 꼬마 정민 (Swift) (0) | 2023.02.22 |
---|---|
[BOJ] 백준 2563 색종이 (Swift) (0) | 2023.02.16 |
[BOJ] 백준 2738 행렬 덧셈 (Swift) (0) | 2023.02.16 |
[BOJ] 백준 9020 골드바흐의 추측 (Swift) (0) | 2023.02.16 |
[BOJ] 백준 4948 베르트랑 공준 (Swift) (0) | 2023.02.16 |