프로그래머스 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12950
내가 제출한 풀이
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
var result:[[Int]] = []
for i in 0 ..< arr1.count {
result.append([])
for j in 0 ..< arr1[i].count {
var value = arr1[i][j] + arr2[i][j]
result[i].append(value)
}
}
return result
}
풀이 과정
크기가 같은 두 행렬의 같은 행, 같은 열 값을 더한 결과를 반환하는 문제이다
A[0][0] + B[0][0] 이런 구조로 흘러가는 것 같다.
행렬?
수 또는 변수 등의 일련의 개체들을 행(Row)과 열(Column)에 맞추어
직사각형 모양으로 순서 있게 배 열하여 괄호[ ]로 묶은 것
이중 반복문을 돌려서 행을 먼저 선택하고, 그 안에서 열을 반복해서 계산한다.
for i in 0 ..< arr1.count {
for j in 0 ..< arr1[i].count {
}
}
결과값을 담기 위한 result 배열을 만든다/
행 반복문을 돌릴 때 append로 빈 배열을 만들어 준 다음, 열 반복문에서 내용을 넣어준다.
// 선언 및 초기화
var result: [[Int]] = []
for i in 0 ..< arr1.count {
// 행 반복문 : 빈 배열 넣어주기
result.append([])
for j in 0 ..< arr1[i].count {
// 열 반복문 : 빈 배열 안에 결과값 더해서 넣어주기
var value = arr1[i][j] + arr2[i][j]
result[i].append(value)
}
}
'알고리즘 > Programmers' 카테고리의 다른 글
[Swift_Programmes] 최대공약수와 최소공배수 ⭐ / 유클리드 호제법, 재귀함수 반복문 (0) | 2023.12.01 |
---|---|
[Swift_Programmes] 직사각형 별찍기 (0) | 2023.11.30 |
[Swift_Programmes] 문자열 다루기 기본 (0) | 2023.11.28 |
[Swift_Programmes] 부족한 금액 계산하기 (0) | 2023.11.28 |
[Swift_Programmes] 문자열 내림차순으로 배치하기 (0) | 2023.11.28 |