![[Lv. 0] 이차원 배열 대각선 순회하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3vPz6%2FbtscoGvdXK4%2F8sSBXs5qBGr5o70OkfUhn0%2Fimg.png)
![스몰스테핑](https://t1.daumcdn.net/tistory_admin/static/manage/images/r3/default_L.png)
[Lv. 0] 이차원 배열 대각선 순회하기프로그래머스/Level 02023. 4. 24. 13:21
Table of Contents
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/181829
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
난이도 : Level.0
언어 : Kotlin
문제 설명 :
2차원 정수 배열 board와 정수 k가 주어집니다.
i + j <= k를 만족하는 모든 (i, j)에 대한 board[i][j]의 합을 return 하는 solution 함수를 완성해 주세요.
제한 사항 :
- 1 ≤ board의 길이 ≤ 100
- 1 ≤ board[i]의 길이 ≤ 100
- 1 ≤ board[i][j] ≤ 10,000
- 모든 board[i]의 길이는 같습니다.
- 0 ≤ k < board의 길이 + board[i]의 길이
입출력 예 :
board | k | result |
[[0, 1, 2], [1, 2, 3], [2, 3, 4], [3, 4, 5]] | 2 | 8 |
풀이 :
class Solution {
fun solution(board: Array<IntArray>, k: Int): Int = board.indices.sumOf { i -> board[i].indices.filter { j -> i + j <= k }.sumOf { j -> board[i][j] } }
}
전에 풀었던 안전지대 문제를 재활용하여 쉽게 풀 수 있었다.
'프로그래머스 > Level 0' 카테고리의 다른 글
[Lv. 0] 특별한 이차원 배열 2 (0) | 2023.04.24 |
---|---|
[Lv. 0] 정사각형으로 만들기 (0) | 2023.04.24 |
[Lv. 0] 중복된 숫자 개수 (0) | 2023.04.21 |
[Lv. 0] 머쓱이보다 키 큰 사람 (0) | 2023.04.21 |
[Lv. 0] 두 수의 합 (0) | 2023.04.21 |
![스몰스테핑](https://t1.daumcdn.net/tistory_admin/static/manage/images/r3/default_L.png)
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!