본문 바로가기

Programmers

(188)
숫자 문자열과 영단어 1 2 3 4 5 6 7 8 9 10 11 12 class Solution { public int solution(String s) { int answer = 0; String[] arr = new String[] { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" }; for (int i = 0; i
이름이 없는 동물의 아이디 1SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID;cs
x만큼 간격이 있는 n개의 숫자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 import java.util.*; class Solution { public long[] solution(int x, int n) { long[] answer = {}; long res = x; List list = new ArrayList(); for (int i = 0; i
행렬의 덧셈 1 2 3 4 5 6 7 8 9 10 11 12 class Solution { public int[][] solution(int[][] arr1, int[][] arr2) { int[][] answer = new int[arr1.length][arr1[0].length]; for (int i = 0; i
정수 내림차순으로 배치하기 1 2 3 4 5 6 7 8 9 10 11 import java.util.*; class Solution { public long solution(long n) { long answer = 0; char[] cArr = Long.toString(n).toCharArray(); Arrays.sort(cArr); StringBuilder sb = new StringBuilder(new String(cArr)).reverse(); answer = Long.parseLong(sb.toString()); return answer; } } Colored by Color Scripter cs Arrays.sort 할 때 Collectioins.reverseOrder 옵션 사용이 안 되기 때문에 StringBuilde..
핸드폰 번호 가리기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 class Solution { public String solution(String phone_number) { String answer = ""; StringBuilder sb = new StringBuilder(); for (int i = 0; i
하샤드 수 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class Solution { public boolean solution(int x) { boolean answer = true; int n = x; int res = 0; while (n != 0) { res += n % 10; n /= 10; } if (x % res != 0) answer = false; return answer; } } Colored by Color Scripter cs 각 자리수를 구할 때 String.valueOf(x).split("")으로 분할하는 방법도 있다.
최대공약수와 최소공배수 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class Solution { public int[] solution(int n, int m) { int a = n, b = m; int[] answer = new int[2]; // 유클리드 호제법 while (b != 0) { int r = a % b; a = b; b = r; } answer[0] = a; answer[1] = n * m / a; return answer; } } Colored by Color Scripter cs 유클리드 호제법으로 구한 최대공약수 a를 n * m에 나누게 되면 최소공배수가 된다.