[Swift 알고리즘] 프로그래머스 LV1 - 11. 행렬의 덧셈
프로그래머스 코딩테스트 연습문제 LV1 - 11. 행렬의 덧셈
11. 행렬의 덧셈
- 출처: 프로그래머스 코딩 테스트 연습
- 난이도: 레벨1
- 사용언어: Swift
문제 설명
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
입출력 예
arr1 | arr2 | return |
---|---|---|
[[1,2],[2,3]] | [[3,4],[5,6]] | [[4,6],[7,8]] |
[[1],[2]] | [[3],[4]] | [[4],[6]] |
주어진 코드
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
return []
}
제출한 코드
처음 제출한 코드
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var arrSum = [[Int]]()
for i in 0..<arr1.count {
var temp = [Int]()
for j in 0..<arr1[i].count {
temp.append(arr1[i][j] + arr2[i][j])
}
arrSum.append(temp)
}
return arrSum
}
다른 사람의 풀이 참고한 후 수정한 코드
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var arrSum = arr1
for i in 0..<arr1.count {
for j in 0..<arr1[i].count {
arrSum[i][j] = arr1[i][j] + arr2[i][j]
}
}
return arrSum
}
다시 푼 코드
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var result = arr1
for i in 0..<arr1.count {
for j in 0..<arr1[i].count {
result[i][j] += arr2[i][j]
}
}
return result
}
Leave a comment