티스토리 뷰
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
- 컴퓨터개론
- 월간 코드 챌린지 시즌1
- 유닉스커맨드
- SWiFT
- 알고리즘문제
- level1
- KAKAO
- 파이썬
- Summer/Winter Coding(~2018)
- 프로그래머스문제
- GIT
- 프로그래머스 프로그래머스문제
- 설치
- 월간 코드 챌린지 시즌2
- 백준
- 코딩테스트
- level2
- x만큼간격이있는n개의숫자
- 정렬
- 재귀함수
- 코드잇
- 이진탐색
- 프로그래밍언어
- 프로그래머스코딩테스트
- 문법
- 피보나치
- 프로그래머스
- 파이썬문법
- 알고리즘
- 조합
최근에 달린 댓글
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
링크
- Total
- Today
- Yesterday