https://programmers.co.kr/learn/courses/30/lessons/12937
오답
class Solution {
public String solution(int num) {
String sol = "";
if(num>0){
if(num%2==0){
sol = "Even";
}else{
sol = "Odd";
}
}
return sol;
}
}
테스트 케이스는 통과했다.
하지만
하지만 결과는 오답이었다 ㅎ
틀린 이유 1
문제에 0은 짝수라고 적혀있었다.
그럼 조건식을 if(num>0)이 아니라 0을 포함하는 if(num>=0)으로 작성해야 함
if(num>=0)
그래도 여전히 75점이다.
틀린 이유 2
문제에서 정수라고 했기 때문에 num에 음수가 올 수도 있다.
따라서 애초에 num>=0 조건식 자체를 사용하면 안 되는 문제였다 ㅎ
정답 1
class Solution {
public String solution(int num) {
String answer = "";
if(num%2==0){
answer = "Even";
}else{
answer = "Odd";
}
return answer;
}
}
정답 2
삼항 연산자로 코드를 더 줄여보자
class Solution {
public String solution(int num) {
return num%2==0?"Even":"Odd";
}
}
✅배운 점
- 문제를 잘 읽자! 정수라고 했지, 양수라고는 안 했으니까 😂
- 그리고 클린 코드 신경 쓰기! "짝수" "홀수"와 같이 둘 중 하나인 값을 return 할 경우 삼항 연산자도 잘 이용해 보기!
728x90
'📓 Study > Coding Test' 카테고리의 다른 글
[Programmers/JAVA] 핸드폰 번호 가리기 (0) | 2021.09.23 |
---|---|
[Programmers/JAVA] 직사각형 별찍기 (0) | 2021.09.22 |
[BOJ] 10817 | 세 수 (0) | 2021.09.19 |
[BOJ] 2438번 별찍기 (0) | 2021.09.12 |
[BOJ] 5543번 | 상근날드 (0) | 2021.09.02 |
댓글