問題の意味
https://vjudge.net/problem/CodeForces-1260C
レンガの列、BのR倍の通常複数がBではなく、Rの複数の全倍数青色塗装する必要があり、赤塗らないしなければならない、コーティングの公倍数から選択されます。塗装レンガの後に選出され、同じ色の連続K-レンガがなければならないかどうかを尋ねました。
思考
RとBが共通の因子を有する場合(すなわち、GCD!= 1)、それだけで見つかったいくつかの数、及びその最も単純な形でない差をスキップすることができます。それ以外の場合は、B> Rを想定より早く成長Bなぜなら、その後、その後、シーケンスは、類似しxrbrbrrbでなければなりません。間違いなく、その後R == B、(ポスト質問火)の可解性のであれば、の削減、削減をしましょうRの連続的な期間のために、我々はそれらを分離するために2件のBを使用し、2とBとの間の位置の数は、B-1、(K-1)の長さによって占有されるk個のR * R + 1であり、2決定されますそうでなければ可能で、両者のBがどのようにして位置しない場合、又は、K rを充填するために使用することができません。
コード
#include <ビット/ STDC ++ H> 名前空間STDを使用して、 #define INF 0x3f3f3f3f の#define LL長い長 のconst int型N = 200005。 const int型MOD = 1E9 + 7。 constのダブルEPS = 1E-8; constのダブルPI = ACOS(-1.0); #define lowbit(X)(X&( - X)) LL GCD(-1,11,11- B) { 戻りB == 0:GCD(B、%b)は、? } メインINT() { のstd :: IOS :: sync_with_stdio(偽)。 int型T; cinを>>トン。 (t--)一方 { LL R、B、K。 CIN >> R >> B >> K。 (R> B)場合 スワップ(R、B)。 LL G = GCD(R、B)。 R / = G、B / G =。 (R == b)の場合 { 裁判所未満<< "OBEY" <<てendl; } そうであれば、(B-1 <(K-1)* R + 1) COUT << "OBEY" << ENDL。 他の 裁判所未満<< "REBEL" <<てendl; } 0を返します。 }