考虑区间长度,我们让r和b除以他们的__gcd这样,这样得到的r和b是互质或者相等的。我们取他们两个小的那个。假设是b.那么被涂的方块应该是b,2b,3b,4b,....kb.
相邻的两个方块之间的区间长度是b-1。。。。k个连续的方块一共会产生k-1的间隔,这些间隔的总长度是n*(k-1),如果说n*(k-1)+1>=m说明mz在这些间隔之间,,也就说一定会有交集的。否则不会有的
#include<bits/stdc++.h> using namespace std; typedef long long ll; void solve(){ ll n,m,k; cin>>n>>m>>k; ll x=__gcd(n,m); n/=x; m/=x; if(n>m) swap(n,m); if(n*(k-1)+1<m) cout<<"REBEL"<<endl; else cout<<"OBEY"<<endl; return ; } int main(){ ll t; cin>>t; while(t--) solve(); return 0; }
原文:https://www.cnblogs.com/Accepting/p/12019784.html