using i64 = longlong; using u64 = unsignedlonglong; using u32 = unsigned; using u128 = unsigned __int128;
voidsolve(){ int x, y, a; cin >> x >> y >> a; a++; a -= a / (x + y) * (x + y); if (a == 0) { cout << "YES\n"; return; } if (x >= a) { cout << "NO\n"; } else { cout << "YES\n"; } }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; cin >> t; while (t--) { solve(); } return0; }
using i64 = longlong; using u64 = unsignedlonglong; using u32 = unsigned; using u128 = unsigned __int128;
// minp[x] 可以找到 x 大于 1 的最小质因子 vector<int> minp, primes; voidsieve(int n){ minp.assign(n + 1, 0); primes.clear(); for (int i = 2; i <= n; i++) { if (minp[i] == 0) { minp[i] = i; primes.push_back(i); } for (auto p : primes) { if (i * p > n) { break; } minp[i * p] = p; if (p == minp[i]) { break; } } } }
voidsolve(){ int n; cin >> n; sieve(n); int p = max(1, n / 3); while (minp[p] != p) { p++; } int l = p, r = p; vector<int> a = {0, p}; while (l > 1 && r < n) { l--, r++; a.push_back(l); a.push_back(r); } for (int i = 1; i < l; i++) { a.push_back(i); } for (int i = r + 1; i <= n; i++) { a.push_back(i); } for (int i = 1; i <= n; i++) { cout << a[i] << " \n"[i == n]; } }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; cin >> t; while (t--) { solve(); } return0; }
using i64 = longlong; using u64 = unsignedlonglong; using u32 = unsigned; using u128 = unsigned __int128;
voidsolve(){ int n, k; cin >> n >> k; vector<int> a(2 * n + 1), b(2 * n + 1); for (int i = 1; i <= n; i++) { cin >> a[i]; a[i + n] = a[i]; } for (int i = 1; i <= n; i++) { cin >> b[i]; b[i + n] = b[i]; } int ans = 0; vector<int> stk; for (int i = 1; i <= 2 * n; i++) { if (a[i]) { stk.push_back(i); } while (!stk.empty() && b[i]) { int x = stk.back(); int mn = min(a[x], b[i]); a[x] -= mn, b[i] -= mn; ans = max(ans, i - x + 1); if (a[x] == 0) { stk.pop_back(); } } } cout << ans << "\n"; }
signedmain(){ ios::sync_with_stdio(false); cin.tie(0); int t = 1; cin >> t; while (t--) { solve(); } return0; }