문제 나의 생각 answer배열의 길이는 입력되는 매개변수 / 2 한후 올림한 값으로 지정. for문에서는 i = 1에서 값 +2 한값들이 홀수가 되므로 해당 로직으로 수행. 나의 답안 public static int[] solution(int n) { int[] answer = new int[(int) Math.ceil(n / (double)2)]; int count = 0; for (int i = 1 ; i
문제 나의 생각 문제 자체는 어려운 것이 없는 문제이다. if 문을 써도 되지만 삼항연산자로 정리 해보고자 한다. 나의 답안 public static int solution(int price) { return (int) (price >= 100000 && price = 300000 && price = 500000 ? price - (price * 0.2) : price); }
문제 나의 생각 첫번째 배열 인덱스 에는 몫값이, 두번재 배열 인덱스에는 나머지값 나의 답안 public static int[] solution(int money) { int[] answer = new int[2]; answer[0] = money / 5500; answer[1] = money % 5500; return answer; } 다른 답안 배열을 선언 할때 식을 넣을 수 있다는 것을 기억하자. class Solution { public int[] solution(int money) { return new int[] { money / 5500, money % 5500 }; } }
문제 나의 생각 폰넘버 맨뒤의 4자를 따로 구분하고, for 문으로 글자.length-4 값까지 * 을 합쳐주고 마지막으로는 나뉘어져 있는 두 글자를 더 하는 방식으로 접근 나의 답안 public static String solution(String phone_number) { int length = phone_number.length(); String answer = ""; String sum = phone_number.substring(length-4, length); for(int i = 0; i < length-4 ; i++){ answer += "*"; } return answer+sum; } 다른 답안 여기서 주의 깊게 본 것은 toCharArray() 함수이다. 해당 방식으로 사용하면 Str..
문제 나의 생각 매개변수의 타입은 int로 십의 자리와 일의자리를 나눈후 다시 합을 하고 나누면 되겠다고 생각하고 접근함. 나의 답안 public static boolean solution(int x) { boolean answer = true; String string = Integer.toString(x); char[] chars = string.toCharArray(); int sum = 0; for (int i=0; i < chars.length; i++){ sum += chars[i]-48; } if(x % sum != 0) answer = false; return answer; }
문제 나의 생각 양수또는 음수에 따라 if 문을 걸고 x 증가값을 index에 넣어 주는 방식으로 접근. 나의 답안 public static long[] solution(int x, int n) { long[] answer = new long[n]; int count = 0; if( x > 0 ){ for(long i = x ; i = x * n; i += x) { answer[count] = i; count++; System.out.println(i); } } return answer; } 다른 답안 answer[0] 값을 초기에 지정을 하면 내가 사용한 count 값을 선언을 할 필요가 없다. 또한, for문에 있는 변수 값을 1 부터 사용이 가능하게 됨으로써 if - else 문을 적을 필요가 없게..