전체 글
-
Level1) 문자열 내림차순으로 배치하기PS/programmers 2020. 9. 8. 17:06
import java.util.Arrays; import java.util.Collections; class Solution { public static String solution(String s) { Character[] answer = new Character[s.length()]; String answer1 = ""; for (int i = 0; i < answer.length; i++) { answer[i] = s.charAt(i); } Arrays.sort(answer, Collections.reverseOrder()); for (int i = 0; i < answer.length; i++) { answer1 += Character.toString(answer[i]); } return answ..
-
Level1) 문자열 내 p와 y의 개수PS/programmers 2020. 9. 8. 16:28
class Solution { boolean solution(String s) { String lower = s.toLowerCase(); int pcnt = 1; int ycnt = 0; for (int i = 0; i < lower.length(); i++) { if (lower.charAt(i) == 'p') { pcnt++; } if (lower.charAt(i) == 'y') { ycnt++; } } return (pcnt-1) == ycnt; } } - 성공 - p,y 둘 다 안나오는 경우도 있으니 pcnt = 1로 주고 풀이 class Solution { boolean solution(String s) { s = s.toLowerCase(); int count = 0; for (int i =..
-
Level1) 문자열 내 마음대로 정렬하기PS/programmers 2020. 9. 8. 16:15
import java.util.Arrays; import java.util.Comparator; class Solution { public String[] solution(String[] strings, int n) { Arrays.sort(strings, new Comparator() { @Override public int compare(String o1, String o2) { if (o1.charAt(n) == o2.charAt(n)) { return o1.compareTo(o2); } else { return o1.charAt(n) - o2.charAt(n); } } }); return strings; } } - 성공 - 저번에 Comparator 쓰는 문제를 풀어봤더니 문제읽고 이거 써야겠다는..
-
Level1) 나누어 떨어지는 숫자 배열PS/programmers 2020. 9. 8. 15:35
import java.util.ArrayList; import java.util.Arrays; class Solution { public int[] solution(int[] arr, int divisor) { ArrayList list = new ArrayList(); for (int i = 0; i < arr.length; i++) { if (arr[i] % divisor == 0) { list.add(arr[i]); } } if (list.size() == 0) { list.add(-1); } int[] answer = new int[list.size()]; for (int i = 0; i < list.size(); i++) { answer[i] = list.get(i); } Arrays.sort(..
-
Level1) 같은 숫자는 싫어PS/programmers 2020. 9. 8. 15:13
import java.util.ArrayList; class Solution { public int[] solution(int []arr) { ArrayList list = new ArrayList(); for (int i = 0; i = 0 && arr[i-1] == arr[i])) { list.add(arr[i]); } } int[] answer = new int[list.size()]; for (int i = 0; i < list.size(); i++) { answer[i] = list.get(i); } return answer; } } - 다른 코드랑 비교해도 깔끔하고 나쁘지 않은듯 - 앞에 똑같은 숫자가 있으면 리스트에 추가하지않고 나왔던..
-
Level1) 가운데 글자 가져오기PS/programmers 2020. 9. 8. 14:41
class Solution { public static String solution(String s) { String answer = ""; if (s.length()%2 != 0) { answer += s.charAt(s.length()/2); } else { answer += s.charAt(s.length()/2 - 1); answer += s.charAt(s.length()/2); } return answer; } } - charAt으로 그 부분을 빼서 더해줬다. return s.substring((s.length()-1) / 2, s.length()/2 + 1); - 다른 풀이 코드 - 훨씬 간편하게 했는데 나는 이렇게 생각 못할거같다 ,,, - 내가 떠올릴 수 있는 방법으로 해보자
-
Level1) 2016년PS/programmers 2020. 9. 8. 14:19
class Solution { public static String solution(int a, int b) { int[] days = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; String[] day_week = { "THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED" }; int totalDays = 0; if (a == 1) { totalDays = b; } else { for (int i = 0; i < a-1; i++) { totalDays += days[i]; } totalDays += b; } return day_week[totalDays%7]; } } - 적다보니까 규칙이 보여서 월마다의 일수배열, 요일배열 ..