programmers 기초 Day5

Hwani·2024년 6월 4일

프로그래머스 DAY 1~25

목록 보기
31/51

문제 - 코드 처리하기

풀이

class Solution {
    public String solution(String code) {
        String answer = "";
        int mode = 0;
        for (int i = 0; i < code.length(); i++) {
            if (code.charAt(i) == '1') mode = 1 - mode;
            else if (i % 2 == mode) answer += code.charAt(i);
        }
        return "".equals(answer) ? "EMPTY" : answer;
    }
}

문제 - 등차수열의 특정한 항만 더하기

풀이

class Solution {
    public int solution(int a, int d, boolean[] included) {
        int answer = 0;

        for (int i = 0; i < included.length; i++) {
            if (included[i]) {
                answer += a + (i * d);
            }
        }

        return answer;
    }
}

문제 - 주사위 게임 2

풀이

class Solution {
    public int solution(int a, int b, int c) {
        int answer = 0;

        if (a != b && a != c && b != c) {
            answer = a+b+c;
        } else if (a == b && a != c || a == c && a != b || b == c && a != c) {
            answer = (a + b + c) * (int) (Math.pow(a, 2) + Math.pow(b, 2) + Math.pow(c, 2));
        } else  {
            answer = (a + b + c) * (int) (Math.pow(a, 2) + Math.pow(b, 2) + Math.pow(c, 2)) * (int) (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3));
        }

        return answer;
    }
}

설명

  • Math.Pow(a, 2) 는 a의 2승을 구하는 함수이다.

문제 - 원소들의 곱과 합

풀이

class Solution {
    public int solution(int[] num_list) {
        int answer = 0;
        int sum = 0;
        int mul = 1;
        
        for(int i = 0; i<num_list.length;i++){
            sum+=num_list[i];
            mul*=num_list[i];
        }
        
        if(sum * sum > mul){
            answer = 1;
        }
        
        return answer;
    }
}

문제 - 이어 붙인 수

풀이

class Solution {
    public int solution(int[] num_list) {
        int answer = 0;
        String odd = "";
        String even = "";

        for (int i = 0; i < num_list.length; i++) {
            if (num_list[i] % 2 == 0) {
                even += Integer.toString(num_list[i]);
            } else {
                odd += Integer.toString(num_list[i]);
            }
        }

        answer = Integer.parseInt(even) + Integer.parseInt(odd);

        return answer;
    }
}
profile
개발자될거야

0개의 댓글