문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/120807
문제 분석
이 문제는 두 정수 num1과 num2가 주어졌을 때
- 같으면 1을 반환하고
- 다르면 -1을 반환하는 문제입니다.
즉, num1 == num2인지 여부를 검사하는 단순 비교 문제입니다.
예시 확인
- num1 = 2, num2 = 3 → 다르므로 -1 반환
- num1 = 11, num2 = 11 → 같으므로 1 반환
- num1 = 7, num2 = 99 → 다르므로 -1 반환
코드 풀이 (삼항 연산자 활용)
class Solution {
public int solution(int num1, int num2) {
int answer = num1 == num2 ? 1 : -1; // 같으면 1, 다르면 -1
return answer;
}
}
코드 해석
1. num1 == num2
- ==는 두 값이 같은지를 비교하는 비교 연산자입니다.
- 같으면 true, 다르면 false를 반환합니다.
2. num1 == num2 ? 1 : -1
- 삼항 연산자의 구조:
조건식 ? 참일 때 값 : 거짓일 때 값
- 따라서 num1 == num2가 true → 1,
false → -1이 됩니다.
3. int answer = ...;
- 비교 결과에 따라 answer에 1 또는 -1이 저장됩니다.
4. return answer;
- 최종 결과를 반환합니다.
코드 풀이 (if문 활용)
class Solution {
public int solution(int num1, int num2) {
if (num1 == num2) {
return 1; // 같으면 1 반환
} else {
return -1; // 다르면 -1 반환
}
}
}
- 이 방법은 가독성이 좋아 초보자들에게 이해하기 쉽습니다.
- 삼항 연산자보다는 코드가 길지만, 조건 분기를 직관적으로 보여줍니다.
'🕮 코딩테스트 > 프로그래머스 Lv 0' 카테고리의 다른 글
[Java] 두 수의 몫 구하기 (0) | 2025.09.19 |
---|---|
[Java] 두 수의 합 구하기 (0) | 2025.09.19 |
[Java] 두 수의 곱 구하기 (0) | 2025.09.19 |
[Java] 두 수의 차 구하기 (0) | 2025.09.18 |
[Java] 나머지 구하기 (0) | 2025.09.18 |