PEACHCONG

[프로그래머스] 홀짝에 따라 다른 값 반환하기 / 자바(Java) 본문

프로그래머스/코딩 기초 트레이닝

[프로그래머스] 홀짝에 따라 다른 값 반환하기 / 자바(Java)

피치콩 2024. 1. 2. 17:30
문제
💻 프로그래머스 - 홀짝에 따라 다른 값 반환하기 (Lv.0)

https://school.programmers.co.kr/learn/courses/30/lessons/181935

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

풀이 (1)
💡 
Math.pow() 제곱함수 이용
class Solution {
    public int solution(int n) {
        int answer = 0;
        
    	if(n % 2 == 1) {
    		for(int i = 1; i <= n; i += 2) {
            		answer += i;
        	}
    	} else {
    		for(int i = 2; i <= n; i += 2) {
        		answer += Math.pow(i, 2);
    		}
    	}
        
        return answer;
    }
}

 

 

풀이 (2)
💡 Math.pow() 사용 없이
class Solution {
    public int solution(int n) {
        int even = 0;
        int odd = 0;
        
        for(int i = 1; i <= n; i++) {
        	if(i % 2 == 0) {
        		even += i * i;
        	} else {
        		odd += i;
        	}
        }
        
        return (n % 2 == 1) ? odd : even;
    }
}

 


 

임의 정수 n이 홀수인 경우

n이하의 홀수인 모든 양의 정수의 합을 return하고,
짝수인 경우에는 n이하의 짝수인 모든 양의 정수의 제곱 합을 return 하는 문제

굳이 Math.pow()를 이용하지 않아도
2번 풀이로 간단하게 풀 수 있는 문제였지만
한 번 써보고 싶었돠..