코트카타 명예의 전당 (1) 문제 정답class Solution { fun solution(k: Int, score: IntArray): IntArray { var res = IntArray(score.size) var kList = mutableListOf() for (i in score.indices) { kList.add(score[i]) kList.sortDescending() if (kList.size > k) kList.removeAt(k) res[i] = kList.last() } return res }}모든 점수를 포함하여 상위 k개의 점..
개요 운동항목은 풀업, 친업, 푸쉬업, 너클 푸쉬업 이렇게 총 4개이다.풀업과 친업은 항목1에 해당하고 푸쉬업과 너클 푸쉬업은 항목2에 해당한다. 원래는 운동항목 설정 없이 풀업과 푸쉬업 기록만 추가하려고 했는데 그립을 살짝 바꿔서 다른 부분도 단련할 수 있는 종목도 추가하면 좋겠단 생각이 들어총 4개의 항목을 중 2개의 항목을 선택하는 다이얼로그를 구현할 것이다. 운동항목 설정 다이얼로그 구현 CommonDialogimport 'package:escape_anchovy/res/text/colors.dart';import 'package:escape_anchovy/res/text/styles.dart';import 'package:escape_anchovy/src/common/common_button..
코드카타 콜라 문제 문제 문제가 좀 많이 길긴 한데 알고보면 그렇게 어려운 문제는 아니다. 정답class Solution { fun solution(a: Int, b: Int, n: Int): Int { var res: Int = 0 var num: Int = n while (num >= a) { val gb = num / a * b res += gb num = gb + num % a } return res }}while문 이용해서 받을 수 있는 총 콜라의 개수를 계산한다. 변수선언var res: Int = 0var num: Int = n받을 수 있는 총 콜라의 개수..
코드카타 푸드파이트 대회 문제 문제가 설명이 좀 길어서 테스트케이스를 보며 뭘 구현해야 되는지 정리해보겠다. 테스트케이스 확인 저렇게 문제가 답도 없이 길 때는 테스트케이스를 통해 코드에서 무엇을 구현해야될지 감을 잡으면 된다. 첫번째 테스트케이스를 통해 설명을 하자면 food 배열인 [1, 3, 4, 6]에서1은 물, 3은 첫번째 음식, 4는 두번째 음식, 6은 세번째 음식에 해당한다. 두 사람이 먹을 n번째 음식들을 각각 공평하게 2로 나눈 다음 n을 그 수만큼 반복해서 result에 더하고,"왼쪽의 선수가 먹을 음식의 배치 + 0 + 오른쪽 선수가 먹을 음식의 배치" 를 반환하면 된다. 정답class Solution { fun solution(food: IntArray): String {..
코드카타 가장 가까운 글자 문제 정답class Solution { fun solution(s: String): IntArray { var res = IntArray(s.length) { -1 } var arr = s.toCharArray() var sMap = mutableMapOf() for (i in arr.indices) { if (sMap.containsKey(arr[i])) { res[i] = i - sMap[arr[i]]!! } sMap[arr[i]] = i } return res }}res의 모든 요소를 -1로 초기..
코트카타 두 개 뽑아서 더하기 문제 정답class Solution { fun solution(numbers: IntArray): IntArray { val resSet = sortedSetOf() for (i in numbers.indices) { for (j in i + 1 until numbers.size) { resSet.add(numbers[i] + numbers[j]) } } return resSet.toIntArray() }}사전캠프 10일차에 풀었던 '삼총사' 문제의 로직을 활용해서 풀 수 있는 문제이다. 주어진 배열에서 수를 2개씩 뽑아야 하므로 2중 for문을 ..
개요 모종의 이유로 운동을 오랫동안 하지 않게 된다면수행능력이 퇴하하게 되고 이는 의욕상실 이어지게 된다. 몸을 만드려면 꾸준하게 운동을 하여점진적 과부화의 원리를 적용해 수행능력을 늘려나가야 한다. 그런 의미에서 운동을 하지 않게 될 때 나 자신에게 경각심을 주기 위해일정 시간이 지나면 일지를 초기화시키는 타이머를 홈화면에 배치할 것이다. 원래는 일지 초기화까지의 시간을 3일로 하려고 했는데여행을 가거나 아플 때도 있다는 걸 고려해서 1주일로 하기로 했다. 운동기록 초기화 타이머 구현 일지 데이터에 필요한 키값 추가 _controller.addData({ 'time': DateTime.now().toString(), 'day': _controller.dataList.length + 1, 'ex..
코트카타 K번째수 문제 정답class Solution { fun solution(array: IntArray, commands: Array): IntArray { val res = arrayListOf() for (command in commands) { val i = command[0] - 1 val j = command[1] - 1 val k = command[2] - 1 res.add(array.slice(i..j).sorted()[k]) } return res.toIntArray() }}arrayListOf와 for문을 통해 초기화한 배열요소들을 이용해서 풀..
- Total
- Today
- Yesterday
- android 부트캠프
- 위젯
- 플러터
- 귤 고르기
- 프로그래머스
- 기초 문제
- 스파트타 코딩클럽
- 뷰
- 무스마
- 그룹화
- 개발블로그
- 레이아웃
- 프로그래머스 #코틀린 #map
- kakao api
- 파이썬
- 안드로이드 스튜디오
- 9 to 9
- 코틀린
- 국비지원
- shared_preferences
- 행렬의 내적
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 |