[프로그래머스/Java] Lv.0 홀짝에 따라 다른 값 반환하기

febCho·2024년 3월 1일
0

코딩테스트

목록 보기
18/253
post-thumbnail

문제

양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요.

- 제한사항

  • 1 ≤ n ≤ 100

풀이

이중 if문을 쓰는 건 좋지 않다고 말한 게 기억이 나서 다른 분들의 풀이를 봤다.

for문의 증감식i+=2로 바꾼 다음 짝수일 때는 초기화식을 int i=2로 하여 루프를 돌고, 홀수일 때는 초기화식을 int i=1로 루프를 돌면 된다는 걸 알게 되어서 아차차했다.

class Solution {
    public int solution(int n) {
        int answer = 0;
        
        if(n%2 != 0){
            for(int i=1;i<=n;i++){
                if(i%2 != 0){
                    answer += i;
                }
            }
        }else{
            for(int i=1;i<=n;i++){
                if(i%2 == 0){
                    answer += (i*i);
                }
            }
        }
        
        return answer;
    }
}

결과

결과

profile
Done is better than perfect.

0개의 댓글