Submission #2850841
Source Code Expand
#include <iostream>
#include <string>
#include <algorithm>
#include <cmath>
using namespace std;
inline long long euc(long long a,
long long b) {
long long r = 1;
if(a < b) {
r = a;
a = b;
b = r;
r = 1;
}
while(r!=0) {
r = a % b;
a = b;
b = r;
}
return a;
}
int main() {
int T;
cin >> T;
for(int t = 0; t < T; ++t) {
long long a, b, c, d;
cin >> a >> b >> c >> d;
bool is_yes = true;
if(a < b) {
is_yes = false;
}
else if(d < b) {
is_yes = false;
}
else if(c+1 < b) {
long long k = euc(b, d);
long long a2 = a % b;
long long q = (b-a2) / k;
if(a2 + q*k == b) {
if(a2 + (q-1)*k > c) is_yes = false;
}
else if(a2 + q*k > c) {
is_yes = false;
}
}
if(is_yes) {
cout << "Yes" << endl;
}
else {
cout << "No" << endl;
}
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | B - rng_10s |
| User | k_opt |
| Language | C++14 (GCC 5.4.1) |
| Score | 600 |
| Code Size | 998 Byte |
| Status | AC |
| Exec Time | 2 ms |
| Memory | 256 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 600 / 600 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example_0, example_1 |
| All | example_0, example_1, multi_0, multi_1, multi_2 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| example_0 | AC | 1 ms | 256 KiB |
| example_1 | AC | 1 ms | 256 KiB |
| multi_0 | AC | 2 ms | 256 KiB |
| multi_1 | AC | 2 ms | 256 KiB |
| multi_2 | AC | 2 ms | 256 KiB |