codeforces 1260 B. Obtain Two Zeroes(思维)

B. Obtain Two Zeroes(思维)

题目链接:codeforces 1260B

题意:

   t组样例,给出a,b,有两种操作

 ①:a = a - x,  b = b - 2 * x

②:a = a - 2 * x,  b = b - x                注意:x可以为任意值,每一次操作x的值可以不唯一

最终能否将a和b都变为0

解题思路:

  当a和b的不为3的倍数,或者a * 2 < b, 或者b * 2 < a ,就不行,否则就可以

AC代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 1100;
int main(){
	int t;
	cin >> t;
	while(t--){
		int a, b;
		cin >> a >> b;
		if(a > 2 * b || b > 2 * a || (a+b) % 3 != 0){
			cout << "NO" << endl;
		}
		else{
			cout << "YES" << endl;
		}
	}
	return 0;
}
发布了204 篇原创文章 · 获赞 11 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/error311/article/details/103751202