목록코딩테스트 풀이/프로그래머스 (11)
Simple&Natural
import java.util.*; class Solution { public int[] solution(String[] genres, int[] plays) { int[] answer = {}; ArrayList answerList = new ArrayList(); HashMap genreInfoByName = new HashMap(); for (int i=0; i 1) { answerList.add(genreInfo.getMusic(1).id); } } int[] answerArray = new int[answerList.size()]; int index = 0; for (int id : answerList) { answerArray[index++] = id; } answer = answerArray..
예전에 무턱대고 감으로만 풀었던 문제들을 유형별로 정리하며 다시 분석하고 있다. import java.util.HashMap; import java.util.Map; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; HashMap hashMap = new HashMap(); for (String eachParticipant : participant) { hashMap.put(eachParticipant, hashMap.getOrDefault(eachParticipant, 0)+1); } for (String eachCompletion : completion) { if ..
언어 Kotlin class Solution { fun solution(lottos: IntArray, win_nums: IntArray): IntArray { var answer: IntArray = IntArray(2) var max = 0 var min = 0 // 각 로또번호 검색 lottos.forEach { num -> if (num!=0) { if (win_nums.contains(num)) min++ } else { max++ } } max += min answer[0] = getPrize(max) answer[1] = getPrize(min) return answer } fun getPrize(matchCount: Int): Int = if (matchCount
풀이과정) 종이가 접히는 모서리의 모양을 예측하는 게 문제의 핵심이다.종이를 접어가며 예측하지 말고 종이를 펼쳐가며 예측하면 좀 더 쉽게 답을 구할 수 있다. 펼쳤을 때의 접면은 무조건 아래로 볼록하므로 0이 되고펼친 반대쪽은 원래의 면을 반대로 뒤집어주면 된다.이걸 반복해주면 답이 나온다. 사용언어 : Kotlin 소스코드) 12345678910111213141516171819202122232425fun solution(n: Int): IntArray { var answer = intArrayOf() for (count in 1..n) { answer = answer.plus(0) if (answer.size>1) { answer = answer.plus( answer.slice(0 until answ..