코딩테스트18 [프로그래머스/Java] LV.1 하샤드 수 지금까지 해오던 문제랑 비슷한 간단한 문제~ 내 코드 class Solution { public boolean solution(int x) { char[] arr = Integer.toString(x).toCharArray(); int sum = 0; for(char c : arr){ sum += Character.getNumericValue(c); } return x % sum == 0; } } 자연수를 자르기 위해 String 타입으로 변환한 후 배열에 담았다. for문을 돌려 숫자로 변환하면서 모든 자릿수 더하기 -> 더한 수로 나눠서 나머지가 없으면 true 있으면 false 2022. 9. 20. [프로그래머스/Java] LV.1 문자열 내 p와 y의 개수 문자열에서 문자 'p' 와 'y' 의 개수가 같은면 true, 다르면 false를 리턴하는 문제이다. 자바에서는 대문자와 소문자를 다르게 인식하기 때문에 주의해서 풀어야 한다. 내 코드 class Solution { boolean solution(String s) { char[] arr = s.toCharArray(); int pCnt = 0; int yCnt = 0; for(char c : arr){ if(Character.toUpperCase(c) == 'P') pCnt++; if(Character.toUpperCase(c) == 'Y') yCnt++; } return pCnt == yCnt ? true : false; } } 나는 문자열을 char 타입의 배열로 변환한 후에 for문을 돌려 p와 y.. 2022. 9. 20. [프로그래머스/Java] LV.1 자연수 뒤집어 배열로 만들기 간단할 줄 알았는데 의외로 고전했던 문제.. 내 코드 class Solution { public int[] solution(long n) { int leng = Long.toString(n).length(); int[] answer = new int[leng]; int cnt = 0; while(n > 0){ answer[cnt] = (int) (n % 10); n /= 10; cnt++; } return answer; } } 나의 경우 long 타입의 자연수 n을 String 문자열로 바꿔준 후 길이를 구해 int[] 배열을 생성해주었다 저번 '자릿수 구하기' 문제에서 사용했던 자연수를 한자리씩 끊어주는 방법을 생각해냈다 ~나머지는 저장하고 몫을 남기는 식으로 한자리 수 가져오는 방법~ 참고 [프로그래.. 2022. 9. 19. [프로그래머스/Java] LV.1 평균 구하기 배열의 평균을 구하는 간단한 문제였다. 내 코드 class Solution { public double solution(int[] arr) { double answer = 0; for(int num : arr){ answer += num; } answer = answer / arr.length; return answer; } } 배열 arr를 for문으로 돌려 간단하게 해결했다. 다른사람 코드 import java.util.Arrays; class Solution { public double solution(int[] arr) { return (double) Arrays.stream(arr).average().orElse(0); } } 라이브러리를 통해 한줄로 해결! 짧은 코드라 좋아보이지만 댓글을 보니.. 2022. 9. 16. 이전 1 2 3 4 5 다음