본문 바로가기

programmers12

[프로그래머스/Java] LV.1 x만큼 간격이 있는 n개의 숫자 내 코드 class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; for(int i=0; i 2022. 9. 22.
[프로그래머스/Java] LV.1 정수 내림차순으로 배치하기 문제의 이해는 간단. 정수를 내림차순해라. 대학교에서 데이터구조 시간에 배운 버블정렬 되겠다. 과목 이름이 데이터구조가 맞던가.. 이미 오래 전 일이 되어버린.. 알고리즘 수업 때도 배웠지 배열을 한 번씩 훑으면서 자리를 바꿔주고 다시 또 처음부터 정렬하는 방식. 이 문제를 보니까 생각났다. 내 코드 class Solution { public int move = 0; public long solution(long n) { long answer = 0; // long -> string -> Char[] char[] arr = Long.toString(n).toCharArray(); arr = sort(arr); // move > 0 일 경우 변화가 있었으므로 다시 정렬 while(move > 0){ //r.. 2022. 9. 21.
[프로그래머스/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.