티스토리 뷰
728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/12950
<나의 풀이>
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var result = [[Int]]()
for row in 0..<arr1.count {
var addedArr = [Int]()
for col in 0..<arr1[row].count {
addedArr.append(arr1[row][col] + arr2[row][col])
}
result.append(addedArr)
}
return result
}
<다른 사람의 풀이>
import Foundation
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
return zip(arr1, arr2).map{zip($0,$1).map{$0+$1}}
}
// -------------------------
// for문으로 위에 코드 이해해보기!
// -------------------------
let arr1 = [[1,2],[2,3]]
let arr2 = [[3,4],[5,6]]
// 0. 첫번째 나오는 map 역할을 하는 변수
var map1 = [[Int]]()
// 1. zip(arr1, arr2)
for (a1, a2) in zip(arr1, arr2) {
var map2 = [Int]()
// 2. zip($0,$1)
for (b1, b2) in zip(a1, a2) {
// 3. map{$0+$1}
map2.append(b1+b2)
}
map1.append(map2)
}
print(map1) // 결과 : [[4, 6], [7, 9]]
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var i = 0, j = 0
return arr1.map { (numbers) -> [Int] in
defer {
i += 1
j = 0
}
return numbers.map { (number) -> Int in
defer {
j += 1
}
return number + arr2[i][j]
}
}
}
- defer
728x90
반응형
'[프로그래머스] > ㄴ코테연습 : Level 1' 카테고리의 다른 글
[프로그래머스] 핸드폰 번호 가리기 (Swift) (0) | 2022.06.26 |
---|---|
[프로그래머스] x만큼 간격이 있는 n개의 숫자 (Swift) (0) | 2022.06.24 |
[프로그래머스] 직사각형 별찍기 (Swift) (1) | 2022.06.24 |
댓글
250x250
반응형
TAG
- 알고리즘문제
- 재귀함수
- 피보나치
- 코드잇
- 문법
- 프로그래머스문제
- 월간 코드 챌린지 시즌2
- GIT
- 유닉스커맨드
- level2
- 프로그래머스
- 정렬
- 컴퓨터개론
- 알고리즘
- 파이썬
- Summer/Winter Coding(~2018)
- 이진탐색
- x만큼간격이있는n개의숫자
- 프로그래머스코딩테스트
- 코딩테스트
- 월간 코드 챌린지 시즌1
- level1
- 파이썬문법
- 프로그래밍언어
- 백준
- KAKAO
- 조합
- 프로그래머스 프로그래머스문제
- 설치
- SWiFT
최근에 달린 댓글
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
링크
- Total
- Today
- Yesterday