설탕 배달 문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N이 주어진다. (3 ≤ N ≤ 5000) 출력상근이가 배달하는 봉지의 최소 개수를 출력한다. 만..
X보다 작은 수 문제- 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력- 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)- 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. 출력- X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 테스트 케이스예제 입력 1 예제 출력 1 10 5 1 4 2 31 10 4 9 2 3 8 5 7 6 나의 문제풀이 123456789101112131415161718192021import java.util.Scanner; public class ..
세 수 문제세 정수 A, B, C가 주어진다. 이때, 두 번째로 큰 정수를 출력하는 프로그램을 작성하시오. 입력첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100) 출력두 번째로 큰 정수를 출력한다. 테스트케이스 예제 입력 1 예제 출력 1 20 30 10 20 예제 입력 2 예제 출력 2 30 30 10 30 예제 입력 3 예제 출력 3 40 40 40 40 예제 입력 4 예제 출력 4 20 10 10 10 문제풀이 12345678910111213141516import java.util.Arrays;import java.util.Scanner; public class Example { public static void main(String[] args) {..
정수 내림차순으로 배치하기 문제 설명함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건n은 1이상 8000000000 이하인 자연수입니다. 입출력 예n return118372873211 나의 풀이 12345678910111213141516171819202122232425import java.util.*;class Solution { public long solution(long n) { long answer = 0; String strResult=""; String strn = String.valueOf(n); List slist = Arrays.asL..
정수 제곱근 판별 문제 설명임의의 정수 n에 대해, n이 어떤 정수 x의 제곱인지 아닌지 판단하려 합니다.n이 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항n은 1이상, 50000000000000 이하인 정수입니다. 입출력 예nreturn1211443-1 입출력 예 설명- 입출력 예#1121은 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. - 입출력 예#23은 정수의 제곱이 아니므로, -1을 리턴합니다. 나의 풀이 12345678class Solution { public long solution(long n) { long answer = -1; double doubleSqrt = Math.sqrt(n);..
하샤드 수 문제 설명양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한 조건x는 1 이상, 10000 이하인 정수입니다. 입출력 예arrreturn10true12true11false13false 입출력 예 설명 - 입출력 예 #110의 모든 자릿수의 합은 1입니다. 10은 1로 나누어 떨어지므로 10은 하샤드 수입니다. - 입출력 예 #212의 모든 자릿수의 합은 3입니다. 12는 3으로 나누어 떨어지므로 12는 하샤드 수입니다. - 입출력 예 #311의 모든 자릿수의 합은 2..
행렬의 덧셈 문제 설명행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한 조건행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 입출력 예 arr1 arr2 return [[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3],[4]] [[4],[6]] 나의 풀이 123456789101112class Solution { public int[][] solution(int[][] arr1, int[][] arr2) { int[][] answer = {}; answer = new i..
핸드폰 번호 가리기 문제 설명프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건s는 길이 4 이상, 20이하인 문자열입니다. 입출력 예phone_numberreturn01033334444*******4444027778888 *****8888 문제풀이 1234567891011class Solution { public String solution(String phone_number) { String answer = ""; char[] charList = phone_number.t..