코딩테스트/JAVA

짝수와 홀수

Funold 2023. 11. 15. 10:00

231115CW

 

정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요.

 

제한 조건
- num은 int 범위의 정수입니다.
- 0은 짝수입니다.

...란다.

 

처음에 작성한 코드

Personal
    public static String solution(int num) {
        String answer = "";
        if (num % 2 == 1) {
            answer = "Odd";
        } else if (num % 2 == -1) {
            answer = "Odd";
        } else if (num % 2 == 0) {
            answer = "Even";
        } else {
            answer = "Even";
        }
        return answer;
    }

아주 하나하나 쭉쭉 작성해놨다.

 

원래는 -값에 대해선 생각을 못한채로 작성을 했더니 자꾸 Runtime Error가 떠서 "도대체!?" 하면서 홧김에 훌훌 풀어써버렸다.

그런데 제출하고 생각해보니  num이 +든 -든 짝수면 나눴을 때 0이 나오고, 나머지는 모두 홀수 값이겠더라. 그러니 아래와 같이 더 간결하게 작성할 수 있었다.

 

public static String solution(int num) {
    String answer = "";
    if (num % 2 == 0) { //0을 포함한 짝수는 2로 나누면 0
        answer = "Even";
    } else { //정수의 범위엔 -값도 포함 => else로 돌려 -홀수도 Odd에 포함
        answer = "Odd";
    }
    return answer;
}

 

그런데 다른사람들의 풀이 중 최상단 코드문을 보니 역시나 기발하더라ㅋㅋㅋ.

참으로 대단하지 싶다.

 

 

풀면서 고민하고, 풀고나서 뿌듯해하고, 다른사람 풀이보고 이마를 탁! 치고.

 

이게 코딩테스트의 묘미이지 싶다.

'코딩테스트 > JAVA' 카테고리의 다른 글

이렇게도 되네  (0) 2023.12.12
가운데 글자 가져오기 - ing  (0) 2023.12.04