문제 설명
문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다.
두 수가 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합니다.
코드
#include <iostream>
#include <string>
using namespace std;
int solution(string ineq, string eq, int n, int m) {
int answer = 0;
if (ineq == ">"){
if (eq=="="){
if (n >= m) {
answer = 1;
}
else {
answer = 0;
}
}
else if (eq == "!") {
if (n > m) {
answer = 1;
}
else {
answer = 0;
}
}
}
else if(ineq=="<") {
if (eq == "=") {
if (n <= m) {
answer = 1;
}
else {
answer = 0;
}
}
else if (eq == "!") {
if (n < m) {
answer = 1;
}
else {
answer = 0;
}
}
}
return answer;
}
int main(void) {
string ch1, ch2;
int n1,n2;
cin >> ch1>>ch2>>n1>>n2;
cout << solution(ch1,ch2,n1,n2);
return 0;
}
'C++ > programmers 코딩테스트(level 0) C++' 카테고리의 다른 글
[C/C++] programmers Level 0 9로 나눈 나머지 (0) | 2023.06.22 |
---|---|
[C/C++] programmers Level 0 flag에 따라 다른 값 반환하기 (0) | 2023.06.20 |
[C/C++] programmers Level 0 홀짝에 따라 다른 값 반환하기 (0) | 2023.06.16 |
[C/C++] programmers Level 0 공배수 (0) | 2023.06.15 |
[C/C++] programmers Level 0 n의 배수 (0) | 2023.06.14 |