链接:https://ac.nowcoder.com/acm/contest/11213/F
来源:牛客网
题目描述
在中国象棋中正所谓新手玩车,熟手玩炮,老手玩马,由此可见象棋中炮的地位还是比较高的。
给定一个n×mn×m的棋盘,全部摆满炮,我们视所有炮都不属于同一阵营,他们之间可以相互攻击但不能不进行攻击直接移动。请问经历若干次攻击,直到不能攻击后,最少能剩余多少个炮。
输入描述:
第一行一个正整数TT,表示数据组数,T≤104T≤104。对于每组数据,输入两个正整数nn和mm,满足:n≤1018n≤1018,m≤1018m≤1018。
输出描述:
对于每组数据,输出最少能剩余多少个炮。
示例1
输入
复制
2
1 2
2 3
输出
复制
2
4
签到题,模拟一下就知道只可能有1,2,4这三种情况。
#include <bits/stdc++.h>
using namespace std;
long long n, m;
int main() {
int t;
cin >> t;
while(t--) {
cin >> n >> m;
if(n == 1 && m == 1) {
cout << 1 << endl;
} else if(n == 1 || m == 1) {
cout << 2 << endl;
} else {
cout << 4 << endl;
}
}
return 0;
}