아무리 쉬운 코드도 리뷰 합니다.
문제 설명
문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다.
두 수가 n과 m이라면
">", "=" : n >= m
"<", "=" : n <= m
">", "!" : n > m
"<", "!" : n < m
두 문자열 ineq와 eq가 주어집니다. ineq는 "<"와 ">"중 하나고, eq는 "="와 "!"중 하나입니다.
그리고 두 정수 n과 m이 주어질 때, n과 m이 ineq와 eq의 조건에 맞으면 1을 아니면 0을
return하도록 solution 함수를 완성해주세요.
제한 사항
1 ≤ n, m ≤ 100
입출력 예
ineq eq n m result
"<" "=" 20 50 1
">" "!" 41 78 0
입출력 예 설명
입출력 예 #1
20 <= 50은 참이기 때문에 1을 return합니다.
입출력 예 #2
41 > 78은 거짓이기 때문에 0을 return합니다.
----------------------------------------------------------------------------------
class Solution {
public int solution(String ineq, String eq, int n, int m) {
int answer = 0;
String equals = ineq + eq;
if (equals.equals("<=")) {
answer = n <= m ? 1 : 0;
} else if (equals.equals(">=")) {
answer = n >= m ? 1 : 0;
} else if (equals.equals(">!")) {
answer = n > m ? 1 : 0;
} else {
answer = n < m ? 1 : 0;
}
return answer;
}
}
설명
- equals 변수에 ineq 문자열과 eq 문자열을 합쳐서 저장 해줍니다.
- if(조건문)을 이용해서 조건이 맞으면 3항 연산자를 통해 한번 더 비교연산자를(<,>,==,!=,<=,>=)를 이용해
맞다면 answer 변수에 1을 담아주고 틀리다면 0을 담아줍니다.
중요코드
- 처음에는 ineq 변수에 담긴 문자열과 eq에 담긴 문자열을 따로 비교를 했다.
(if (ineq.equals("<") && eq.equals("=")) 이런식으로) 근데 equals 변수에 두게 문자열을 더해서
조금 더 쉽게 조건문을 만들 수 있었다.
실행결과
정확성 테스트
테스트 1 〉 | 통과 (1.37ms, 74.5MB) |
테스트 2 〉 | 통과 (1.54ms, 71.6MB) |
테스트 3 〉 | 통과 (1.37ms, 72.4MB) |
테스트 4 〉 | 통과 (1.10ms, 75.7MB) |
테스트 5 〉 | 통과 (1.00ms, 75.7MB) |
테스트 6 〉 | 통과 (1.08ms, 80.3MB) |
테스트 7 〉 | 통과 (1.78ms, 79.3MB) |
테스트 8 〉 | 통과 (1.76ms, 77.1MB) |
테스트 9 〉 | 통과 (1.08ms, 72.8MB) |
테스트 10 〉 | 통과 (1.12ms, 73.7MB) |
테스트 11 〉 | 통과 (1.57ms, 74.1MB) |
테스트 12 〉 | 통과 (1.19ms, 77.1MB) |
테스트 13 〉 | 통과 (1.25ms, 67.3MB) |
테스트 14 〉 | 통과 (0.93ms, 65.9MB) |
테스트 15 〉 | 통과 (1.62ms, 76.2MB) |
테스트 16 〉 | 통과 (1.44ms, 71.6MB) |
테스트 17 〉 | 통과 (1.05ms, 72.6MB) |
테스트 18 〉 | 통과 (1.69ms, 77.2MB) |
테스트 19 〉 | 통과 (1.18ms, 84.1MB) |
테스트 20 〉 | 통과 (0.99ms, 72.6MB) |
테스트 21 〉 | 통과 (1.70ms, 76.8MB) |
테스트 22 〉 | 통과 (1.22ms, 72.6MB) |
테스트 23 〉 | 통과 (1.05ms, 68.7MB) |
테스트 24 〉 | 통과 (1.00ms, 73.3MB) |
테스트 25 〉 | 통과 (1.14ms, 72.2MB) |
테스트 26 〉 | 통과 (1.32ms, 75.6MB) |
테스트 27 〉 | 통과 (1.12ms, 73.5MB) |
테스트 28 〉 | 통과 (1.15ms, 70.9MB) |
테스트 29 〉 | 통과 (1.11ms, 75.5MB) |
테스트 30 〉 | 통과 (1.33ms, 77.1MB) |
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
'ALGORITHM > 코딩 기초 트레이닝' 카테고리의 다른 글
[ 프로그래머스]코드 처리하기 (0) | 2024.07.30 |
---|---|
[프로그래머스]flag에 따라 다른 값 반환하기 (0) | 2024.07.29 |
[프로그래머스]홀짝에 따라 다른 값 반환하기 (0) | 2024.07.29 |
[프로그래머스]공배수 (0) | 2024.07.29 |
[프로그래머스]n의 배수 (0) | 2024.07.29 |