
fun main() { val n = 5 val coins = mutableListOf(3, 2, 1, 1, 9) coins.sort() var target = 1 for (i in 0.. target) break target += coins[i] } println("target = $target")} 처음에는 완전 탐색으로 접근해야하나? 라는 생각이 들었다.(물론 책 카테고리가 그리디 알고리즘이지만 내가 문제를 보고 제일 먼저 드는 생각은 완전 탐색이었다.)target이 1씩 증가하면서 최솟값을 찾아야겠다는 생각 때문에 근데 완전 탐색의 경우N개의 동전으로 만들 수 있는 모든 부분집합을 고려하면 부분집합 개수는 2^N 개N이 최대 1,000개면 최악의 ..

우선 필자가 처음에 작성한 틀린 코드를 공개한다. fun main() { var n = 5 val member = mutableListOf(1,2, 4,3,1) member.sort() var cnt = 0 while(n > 0) { if (member[n - 1] n n = 0 } } println("cnt = " + cnt)} 정리되지 않은 코드이기도 하고 로직자체도 억지로 끼워맞춘 느낌인데 공개하는 이유는여기서 필자가 착각한 부분이 '공포도가 높은 모험가'에게 집착했다는 것이다.'공포도가 X인 모험가는 반드시 X명 이상으로 구성한 모험가 그룹에 참야해야한다.' 는 문제를 읽고 '아..! 공포도 X가 큰 걸 ..
- Total
- Today
- Yesterday
- 코드
- 챌린지
- 자바
- 해커랭크
- hackerrank challenges
- 정보처리 산업기사
- 소스코드
- 정보처리산업기사 공부법
- 디버깅
- hackerrank
- 정보처리산업기사
- 22 정보처리산업기사
- stack
- 해커랭크 자바
- 해커랭크 자바 챌린지
- 강의
- 나동빈
- JPA
- ORM
- challenges
- 22 정보처리 산업기사
- LinkedList
- 이코테
- 해커랭크 챌린지
- BAEKJOON
- 자바의 정석
- queue
- 백준
- 그리디
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |