오늘 공부한 내용 정리(2024년 5월 12일)
1. 코드카타 문제풀이
A. 두 개 뽑아서 더하기
문제 내용
문제 풀이 방법
- numbers의 각각의 데이터 간의 합에 대한 모든 경우의 수를 리스트에 넣어서 오름차순으로 정렬 후 return 한다.
해결 코드(스포 주의)
더보기
// 2중 for문으로 모든 경우의 수를 계산해서 mutableList에 넣고 distinct() 하기.
fun solution(numbers: IntArray): IntArray {
val plusList = mutableListOf<Int>()
// 바깥 for문은 기준 number와 index를 불러옴
// 안쪽 for문은 바깥의 index와 같지 않은 것들만 불러와서 더해주고 list에 넣어줌.
numbers.forEachIndexed { outIndex, number ->
numbers.forEachIndexed { inIndex, plusValue ->
if (outIndex != inIndex) {
plusList.add(number + plusValue)
}
}
}
return plusList.distinct().sorted().toIntArray()
}
풀이 과정
- 모든 경우의 수를 넣을 plusList(mutableList) 생성
- numbers의 숫자들을 더하기 위해 2중 for문을 사용
바깥 for문은 number와 index를 안쪽 for문은 바깥의 index와 비교할 index와 number와 더할 value를 불러옴 - 바깥의 index와 안의 index가 같지 않은 경우에만 number끼리의 합을 구해 mutableList에 추가
- mutableList의 중복 데이터를 distinct()를 이용해 제거해 주고, sorted()로 오름차순으로 정렬해 준 후 intArray로 변환
2. 개인 공부
A. 토이 프로젝트 아이디어 구상
공부 내용 간단 정리
- sns와 비슷한 기능을 하는 앱을 만들고 싶음.
- 개발자를 위한 sns를 만들고자 함.
간단 정리
- 이전에 기능 구현을 끝낸 planner는 앱 이름을 정확히 정하고 오류 테스트 후 출시할 예정이다(13일부터 진행).
728x90
'♞ | 공부일지 > ♝ | TIL' 카테고리의 다른 글
[Android, 내일배움캠프] 공부일지(2024-05-14) (0) | 2024.05.14 |
---|---|
[Android, 내일배움캠프] 공부일지(2024-05-13) (0) | 2024.05.13 |
[Android, 내일배움캠프] 공부일지(2024-05-11) (0) | 2024.05.11 |
[Android, 내일배움캠프] 공부일지(2024-05-10) (0) | 2024.05.10 |
[Android, 내일배움캠프] 공부일지(2024-05-09) (0) | 2024.05.09 |