프로그래머스 알고리즘

출제 링크 : programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr import java.util.*; class Solution { public static Map userList = new HashMap(); public static Queue inOutQueue = new ArrayDeque(); public static Queue uidQueue = new ArrayDeque(); public String[] soluti..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr import java.math.BigInteger; class Solution { public long solution(int w, int h) { int gcd = BigInteger.valueOf(w).gcd(BigInteger.valueOf(h)).intValue(); return ((long) w * (long) h) - (((..
java 프로그래머스 _ 출제 링크 : programmers.co.kr/learn/courses/30/lessons/12899 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr class Solution { public String solution(int n) { String answer = ""; String[] temp = {"4","1","2"}; while(n > 0) { int remainder = n % 3; n /= 3; if(remainder == 0) n--; answer = (temp[remainder]) + answer; } return answer.toString(); } }
출제 링크 : programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr class Solution { public String solution(int[] numbers, String hand) { StringBuilder answer = new StringBuilder(); int l_position = 10; // * i..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/76501 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr class Solution { public int solution(int[] absolutes, boolean[] signs) { int answer = 0; for (int i = 0; i < signs.length; i++) { if (signs[i]) { answer += absolutes[i]; } else { answer -= a..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/12982 코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 programmers.co.kr import java.util.Arrays; class Solution { public int solution(int[] d, int budget) { Arrays.sort(d); if(d[0] > budget) return 0; int answer = 1; int sum = d[0]; for (int i = 1; i < d.length; i++) { sum += ..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr import java.util.*; class Solution { public static boolean[] prime; public int solution(int[] nums) { Arrays.sort(nums); int answer = 0; int sum = 0; for (int i : nums) { sum += i; } checkToPr..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr import java.util.*; class Solution { public int[] solution(int[] numbers) { TreeSet answer = new TreeSet(); for (int i = 0; i < numbers.length; i++) { for (int j = i; j < numbe..
출제 링크 : programmers.co.kr/learn/courses/30/lessons/12910 코딩테스트 연습 - 나누어 떨어지는 숫자 배열 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하 programmers.co.kr import java.util.*; class Solution { public int[] solution(int[] arr, int divisor) { List answer = new ArrayList(); for (int num : arr) { if (num % divisor == 0) { a..
재호우96
'프로그래머스 알고리즘' 카테고리의 글 목록