본문 바로가기
♞ | 공부일지/♝ | TIL

[Android, 내일배움캠프] 공부일지(2024-05-11)

by immgga 2024. 5. 11.
오늘 공부한 내용 정리(2024년 5월 11일)

 

 

1. 코드카타 문제풀이

A. 행렬의 덧셈

문제 내용

 

문제 풀이 방법

  • arr1, arr2가 2차원 배열이고 각 배열의 index에 해당하는 item들의 합을 answer(2차원 배열)에 add 하기.
  • arr1과 arr2의 행과 열이 같기 때문에 1번의 이중 for문을 이용해 합을 계산한다.

 

해결 코드(스포 주의)

더보기
fun solution(arr1: Array<IntArray>, arr2: Array<IntArray>): Array<IntArray> {
    val answer = mutableListOf<IntArray>()
    arr1.forEachIndexed { rowIndex, _ ->
        val addArr = mutableListOf<Int>()
        arr1[rowIndex].forEachIndexed { columnIndex, _ ->
            addArr.add(arr1[rowIndex][columnIndex] + arr2[rowIndex][columnIndex])
        }

        answer.add(addArr.toIntArray())
    }

    return answer.toTypedArray()
}

 

풀이 과정

  • arr1을 기준으로 forEachIndexed를 하면 arr1의 IntArray 데이터를 불러올 수 있다.
  • arr1[rowIndex]를 기준으로 forEachIndexed를 사용해 IntArray의 데이터를 불러올 수 있다.
  • intArray의 데이터(arr1, arr2)의 합을 addArr(mutableList)에 저장한다(list로 사용하는 게 훨씬 편해서 list를 사용함).
  • 내부 for문이 종료될 때마다 answer에 addArr을 IntArray 타입으로 바꿔서 저장한다.
  • 마지막에 answer를 Array로 변환해 return 한다.

 

2. 개인 공부

A. 공부 내용

공부 내용 간단 정리

  • planner 카테고리 개발 관련 블로그 포스팅 작성.

 

 


 

간단 정리

  • planner 개발도 마무리되어서 다른 공부할 것들을 좀 찾아봐야겠다.
  •  프로그래머스 공부는 코딩테스트를 위해서 주말에도 꾸준히 진행할 예정이다.
728x90