[Programmers] #181934 - 조건 문자열 [Java][C++][Python]
부등호와 등호 기호 조합으로 두 정수의 비교 조건을 판별해 1 또는 0을 반환하는 워밍업 문제.
[Programmers] #181934 - 조건 문자열 [Java][C++][Python]
1. 아이디어
부등호 ineq(">" 또는 "<")와 등호 여부 eq("=" 또는 "!")의 조합이 n과 m의 비교 조건을 나타낸다. ineq가 ">"이면 eq가 "="일 때 n >= m을, 아니면 n > m을 확인하고, ineq가 "<"이면 마찬가지로 eq에 따라 n <= m 또는 n < m을 확인해서, 조건을 만족하면 1을 아니면 0을 반환하면 되는 문제다.
2. 복잡도
| 접근 | 시간 | 공간 |
|---|---|---|
| 풀이 | $O(1)$ | $O(1)$ |
3. 코드
풀이 [Java][C++][Python]
1
2
3
4
5
6
7
8
9
10
11
class Solution {
public int solution(String ineq, String eq, int n, int m) {
if (ineq.equals(">")) {
if (eq.equals("=")) return n >= m ? 1 : 0;
return n > m ? 1 : 0;
} else {
if (eq.equals("=")) return n <= m ? 1 : 0;
return n < m ? 1 : 0;
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
#include <bits/stdc++.h>
using namespace std;
int solution(string ineq, string eq, int n, int m) {
if (ineq == ">") {
if (eq == "=") return n >= m;
return n > m;
} else {
if (eq == "=") return n <= m;
return n < m;
}
}
1
2
3
4
5
6
7
8
9
def solution(ineq, eq, n, m):
if ineq == ">":
if eq == "=":
return int(n >= m)
return int(n > m)
else:
if eq == "=":
return int(n <= m)
return int(n < m)
This post is licensed under CC BY 4.0 by the author.