본문 바로가기

전체 글

(138)
하샤드 수 /* 하샤드 수 * 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. * 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. * 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. * * arr return * 10 true 10의 모든 자릿수의 합은 1입니다. 10은 1로 나누어 떨어지므로 10은 하샤드 수 * 12 true 12의 모든 자릿수의 합은 3입니다. 12는 3으로 나누어 떨어지므로 12는 하샤드 수 * 11 false 11의 모든 자릿수의 합은 2입니다. 11은 2로 나누어 떨어지지 않으므로 11는 하샤드 수 X * 13 false 13의 모든 자릿수의 합은 4입니다...
x만큼 간격이 있는 n개의 숫자 /* x만큼 간격이 있는 n개의 숫자 * 함수 solution은 정수 x와 자연수 n을 입력 받아, * x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. * 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. * * x n answer * 2 5 [2,4,6,8,10] * 4 3 [4,8,12] * -4 2 [-4, -8] */ 12345678910111213141516171819202122public class programmer_1_15 { static int a1 = 100000; static int b1 = 1000; static int a2 = 4; static int b2 = 3; static int a3 = -4; static int b3..
문자열을 정수로 바꾸기 /* 문자열을 정수로 바꾸기 * 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. * * 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. * str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. */ 12345678910111213141516public class programmer_1_14 { static String a1 = "1234"; static String a2 = "-1234"; public int solution(String s) { int answer = 0; return Integer.parseInt(s); } public static void main(String ..
문자열 내 p와 y의 개수 /* 문자열 내 p와 y의 개수 * 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. * s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, * 다르면 False를 return 하는 solution를 완성하세요. * 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. * 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. * * s answer * "pPoooyY" true * "Pyy" false */ 1234567891011121314151617181920212223public class programmer_1_13 { static String a1 = "pPoooyY"; static String a2 = "Pyy"; boolean solution(String ..
정수 제곱근 판별 /* 정수 제곱근 판별 * 임의의 양의 정수 n에 대해, * n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. * n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, * n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. * * n return * 121 144 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. * 3 -1 3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다. */ 1234567891011121314151617181920212223242526272829public class programmer_1_12 { static long a1 = 1; static long a2 = 3; public long solution(l..
자연수 뒤집어 배열로 만들기 /* 자연수 뒤집어 배열로 만들기 * 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. * 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. * * n return * 12345 [5,4,3,2,1] */ 12345678910111213141516171819202122232425262728293031public class programmer_1_11 { static long a1 = 12345; public int[] solution(long n) { int[] answer = new int[(Long.toString(n)).length()]; String[] ar = (Long.toString(n)).split(""); int idx = 0; for(int i ..
평행 /* 평행 * 점 네 개의 좌표를 담은 이차원 배열 dots가 다음과 같이 매개변수로 주어집니다 * [[x1, y1], [x2, y2], [x3, y3], [x4, y4]] * 주어진 네 개의 점을 두 개씩 이었을 때, * 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return * * dots result * [[1, 4], [9, 2], [3, 8], [11, 6]] 1 * 점 [1, 4], [3, 8]을 잇고 [9, 2], [11, 6]를 이으면 두 선분은 평행 * [[3, 5], [4, 1], [2, 4], [5, 10]] 0 * 점을 어떻게 연결해도 평행하지 않습니다. * * 반례 * [[1, 1], [5, 1], [1, 10], [3, 10]] */ 1 2 3 4 5 6 7 8 9 ..
자릿수 더하기 /* 자릿수 더하기 * 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. * 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. * * N answer * 123 6 * 987 24 */ 123456789101112131415161718192021public class programmer_1_10 { static int a1 = 123; static int a2 = 987; public int solution(int n) { int answer = 0; String k = Integer.toString(n); for(int i = 0; i