코딩 테스트
-
[프로그래머스] 징검다리 건너기 (자바)코딩 테스트 2025. 3. 28. 22:44
https://school.programmers.co.kr/learn/courses/30/lessons/64062 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 아래의 조건 때문에 완전탐색은 불가능하다고 판단했다.stones 배열의 크기는 1 이상 200,000 이하입니다.stones 배열 각 원소들의 값은 1 이상 200,000,000 이하인 자연수입니다.그럼 DP 나 이분탐색을 사용해야 겠다고 생각했다. - DP: DP를 적용해도 시간 복잡도 단축이 크지 않을 것 같았다. 최악의 경우 stones의 원소 값만큼 시간복잡도가 깊어질 수 있기 때문에..- 이분탐색: 위의 이유로 이분탐색을 적용해야 겠..
-
[백준] 1806번 부분합 자바(Java)코딩 테스트 2025. 3. 25. 17:33
https://www.acmicpc.net/problem/1806 전형적인 투포인터 문제다.투포이터는 O(N)의 시간복잡도를 갖는다. 시간제한이 0.5초인 이 문제에 사용하기 딱이다. (사실 자바는 1초 제한.. ㅠ) import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(Sy..
-
[프로그래머스] 이모티콘 할인행사코딩 테스트 2025. 3. 24. 21:49
https://school.programmers.co.kr/learn/courses/30/lessons/150368 쌩구현 문제였다. [풀이한 코드]import java.util.*;class Solution { static final Map percentMap = Map.of(10, 9, 20, 8, 30, 7, 40, 6); static final int[] pers = new int[]{10, 20, 30, 40}; static int[][] users; static int[] emoticons; static int maxPlusUser; static long maxSale; public int[] solution(int[][] users,..
-
[프로그래머스] 표현 가능한 이진 트리 자바코딩 테스트 2025. 3. 19. 20:41
https://school.programmers.co.kr/learn/courses/30/lessons/150367 분할정복을 사용하는 문제입니다. [풀이한 코드]import java.util.*;class Solution { public int[] solution(long[] numbers) { int[] answer = new int[numbers.length]; for (int i = 0; i 이진수 변환 String binary = Long.toBinaryString(number); // 2) 이진수에 더미 노드 채우기 double size = getSize(binary.length()); Stri..
-
[백준] 우주신과의 교감 1774번 자바코딩 테스트 2025. 3. 19. 13:37
https://www.acmicpc.net/problem/1774 기본적인 MST 문제입니다. 최소신장트리그래프의 모든 정점을 사이클 없이 잇는 트리에서 간선의 가중치의 합이 최소가 되는 트리 크루스칼 알고리즘간선을 하나씩 늘려가면서 이어줍니다. [풀이한 코드]package mst;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.PriorityQueue;import java.util.StringTokenizer;public class B1774 { static class Node { int x; int y; Node(i..
-
[백준] 26093 고양이 목에 리본 달기 (DP)코딩 테스트 2024. 6. 26. 19:18
https://www.acmicpc.net/problem/26093 제목외로운 윤제는 고양이를 키우기로 했다. 𝑁 마리의 고양이를 입양하기로 한 윤제는 고양이들에게 리본을 달아주기 위해 𝐾 종류의 리본을 충분히 준비했다. 즉, 각 리본의 개수는 무한하다. 각 고양이마다 리본의 종류에 따라 좋아하는 정도가 다르고, 이를 만족도로 나타낼 수 있다. 고양이들을 번호순으로 한 줄로 세우고 리본을 달아주려고 하는데, 각 고양이는 자신과 이웃한(왼쪽 혹은 오른쪽) 고양이와 같은 종류의 리본을 다는 것을 굉장히 싫어한다. 윤제는 고양이들이 싫어하는 상황을 피하면서 각 고양이의 리본에 대한 만족도의 총합을 극대화하고 싶다. 이 조건을 만족하는 만족도 합의 최댓값을 윤제에게 알려주자. 입력첫 번째 줄에는 고양이의 수 𝑁..
-
[백준 2343번] 기타레슨코딩 테스트 2024. 1. 3. 17:42
get get get get a guitar 🎶 이진탐색 문제이다. 사실 실제 코딩테스트를 칠 때 이런 문제가 나오면 이진 탐색을 떠올릴 수 있을지 모르겠다.. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class B2343 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new S..
-
[백준] 1958번 : LCS 3코딩 테스트 2023. 7. 25. 09:27
LCS 문제들을 차례대로 풀고있는데 이 문제 완전 뒷통수 제대로 맞... 그냥 내가 못해서 그런거긴 한데 암튼 그래서 포스팅한다.. 처음에는 물론 3차원 배열을 생각하기는 했다. 그런데 3차원을 .... 어떻게? 라는 생각에 에이~ 아니겠지~ 하고 첫 문자열 & 두번째 문자열 의 lcs 를 구해서 도출된 문자열과 세 번째 문자열의 LCS를 이용해서 최종 답을 도출하도록 구했다. 짜잔 ...~ package baekJoon.gold; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class B1958 { public static void main(String[] args) t..