목록CodingTest (432)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/l8vmu/btsakb6zKun/KoKgukGkhOrwpFW4bKo2ZK/img.png)
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 문자열 S가 입력된다. 첫 문자부터 카운트해서 첫 문자들의 수와 그 외의 문자들의 수가 같아질 때 까지 잘라낸다. 잘라진 문자열의 수를 출력한다. 🔸 코드 🔸 class Solution { public int solution(String s) { int answer = 0; int size = s.length(); int idx = 0; while(idx < size) { char c = s.charAt(idx); int a = 1; int b = 0; while(++idx < ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/NMini/btr97ojn7P5/MKIXXKfnTrSJkWyFQVmstk/img.png)
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 새로운 데이터가 입력될 때 마다 내림차순 정렬했을 때, k 번째 수를 출력한다. 배열의 정렬은 시간 복잡도가 커지므로 java 우선순위 큐의 최대 힙을 사용해 정렬한다. 🔸 코드 🔸 import java.util.PriorityQueue; class Solution { public int[] solution(int k, int[] score) { int[] answer = new int[score.length]; PriorityQueue que = new PriorityQueue..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cUYHYb/btr8HJ4Rq0G/aO9P0ajoJR6MOYHbiNMkb0/img.png)
👉 문제링크 2293번: 동전 1 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. www.acmicpc.net 🔸 문제 분석 🔸 n가지 동전으로 k원을 만드는 경우의 수를 출력한다. 동전을 무한으로 쓸 수 있으면 전형적인 DP문제로, dp[i] 는 i원을 만들 수 있는 경우의 수이다. 🔸 코드 🔸 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { pu..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/csEi6A/btr9NDVrYvf/uwpeNfvZCeKMqcY9UK3o2k/img.png)
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 입력된 점수의 사과들로 한 상자에 m개씩 담았을때 최대 이익을 구한다. 2가지 풀이를 생각했다. 사과 점수를 정렬후 인덱스를 m개씩 이동해서 누적한다. 사과 점수를 배열에 카운트 후 m개씩 카운트해서 누적한다. 사과 점수의 길이가 100만까지 가기 때문에 터지진 않지만, 정렬에서 시간 복잡도가 더 커질 것 같아 2번을 선택했다. 🔸 코드 🔸 import java.util.Arrays; class Solution { public int solution(int k, int m, in..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cO7YEP/btr9NpoO1Wr/6DSkhjA2McBlOKGzZAr5Ck/img.png)
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 입력으로 주어진 숫자 배열의 원소를 최대한 사용해서 좌우대칭을 만든다. 🔸 코드 🔸 class Solution { public String solution(int[] food) { StringBuilder sb = new StringBuilder(); for(int i = 1; i < food.length; i++) { for(int j = 0; j < food[i]/2; j++) { sb.append(i); } } StringBuilder answer = new StringBu..