示例1:
输入
16
2 1 2
3 1 3
67 1 2
100 1 2
8 6 8
9 6 8
10 6 8
11 6 8
12 6 8
13 6 8
14 6 8
15 6 8
16 6 8
1314 6 8
1994 1 13
1994 7 12
输出
No
Yes
Yes
No
No
No
Yes
Yes
No
No
Yes
Yes
No
Yes
No
No
题意:两个人从1~n个石子中取一个数,分别为a b,…然后我就迷路了…嘿嘿
下面是我的找规律解法
个人认为:这种一看不是很难且数据很多的题目八成是有规律的
代码:
#include <bits/stdc++.h>
using namespace std;
int main(){
int T;
cin>>T;
int a,b,n,num;
while(T--){
cin>>n>>a>>b;
num=__gcd(a,b);//求a,b的最大公因数
num=n/num;
if(num%2==1)
printf("Yes\n");
else
printf("No\n");
}
}
先求a,b的最大公因数num,用n除以这个数,得到的结果判断奇偶性,就可以了。
感觉是从结果推导到原因,又好像没有推到,哎编程猴子的苦恼~~[掉发.jpg]