[백준 24783] Number Fun (C#, C++) - soo:bak
작성일 :
문제 링크
설명
두 숫자를 이용하여 사칙 연산을 수행할 때, 세 번째 숫자를 만들 수 있는지 여부를 판단하는 문제입니다.
각 테스트 케이스마다 두 숫자를 사용하여 사칙 연산을 수행하고, 각 연산의 결과가 세 번째 숫자와 같은지 비교합니다.
어떤 연산이라도 세 번째 숫자와 일치하면 Possible
을, 그렇지 않으면 Impossible
을 출력합니다.
Code
[ C# ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
namespace Solution {
class Program {
static bool CheckOperations(int a, int b, int c) {
return (a + b == c || a - b == c || b - a == c || a * b == c ||
(b != 0 && a / b == c && a % b == 0) ||
(a != 0 && b / a == c && b % a == 0));
}
static void Main(string[] args) {
int n = int.Parse(Console.ReadLine()!);
while (n-- > 0) {
var inputs = Console.ReadLine()!.Split(' ');
int a = int.Parse(inputs[0]);
int b = int.Parse(inputs[1]);
int c = int.Parse(inputs[2]);
Console.WriteLine(CheckOperations(a, b, c) ? "Possible" : "Impossible");
}
}
}
}
[ C++ ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <bits/stdc++.h>
using namespace std;
bool checkOperations(int a, int b, int c) {
return (a + b == c || a - b == c || b - a == c || a * b == c ||
(b != 0 && a / b == c && a % b == 0) ||
(a != 0 && b / a == c && b % a == 0));
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n; cin >> n;
while (n--) {
int a, b, c; cin >> a >> b >> c;
cout << (checkOperations(a, b, c) ? "Possible" : "Impossible") << "\n";
}
return 0;
}