2023.07.02.SUN

ronglong·2023년 7월 2일
0

[ 프로그래머스 ]

  • 약수의 개수와 덧셈
    : 나는 약수의 개수가 짝수인지 홀수인지 판별하는 메서드를 하나 만들어서 풀었다.
    다른 사람들 풀이 보니까, 제곱수인 경우는 약수의 개수가 홀수라는 점을 이용하여 간단하게 푼 경우가 있었음.
class Solution {
    public int solution(int left, int right) {
        int answer = 0;
        for(int i=left; i<=right; i++){
            answer += judge(i);
        }
        return answer;
    }
    public static int judge(int num) {
        int count = 0;
        for(int i=1; i<=num; i++){
            if(num%i==0) count++;
        }
        return count % 2 == 0 ? num : num*(-1);
    }
}
  • 이상한 문자 만들기
    : 맨 처음에는 배열로 쪼개서 풀려다가, 공백때문에 계속 테스트 케이스 통과 못하고 에러나서, int 변수 하나 선언하고 다른 방법으로 풀었다.
class Solution {
    public String solution(String s) {
//         //공백 기준으로 단어 쪼개기
//         String[] arr = s.split(" ");

//         //각 단어를 대문자,소문자 패턴으로 변경
//         for(int i=0; i<arr.length; i++){
//             if(arr[i].equals(" ")) continue;
//             String str = arr[i];
//             arr[i] = "";
//             for(int j=0; j<str.length(); j++){
//                 if(j%2==0) {
//                     arr[i] += (str.charAt(j)+"").toUpperCase();
//                 }
//                 else {
//                     arr[i] += (str.charAt(j)+"").toLowerCase();
//                 }
//             }
//         }

//         //다시 합치기
//         return String.join(" ", arr);
        String answer = "";
        int j = 0;
        for(int i=0; i<s.length(); i++){
            if(s.charAt(i)==' '){
                answer += s.charAt(i)+"";
                j = 0;
                continue;
            }
            if(j%2==0){
                answer += (s.charAt(i)+"").toUpperCase();
                j++;
            }
            else{
                answer += (s.charAt(i)+"").toLowerCase();
                j++;
            }
        }
        return answer;
    }
}

[ 느낀 점 ]

오늘 잠들기 전에 꼭 이클립스랑 메이븐 관련 유튜브 영상 보기,,!★
그리고 내일부터 한 주도 화이팅.

0개의 댓글