Code
// #include <bits/stdc++.h>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <vector>
#include <queue>
#include <cmath>
#include <unordered_map>
#include <map>
#include <set>
#include <cctype>
#include <list>
#include <bitset>
#define dbg(x) cout << #x << " = " << x << "\n"
using namespace std;
#define cf int _o_o_;cin>>_o_o_;for (int Case = 1; Case <= _o_o_;Case++)
#define SZ(x) (int)(x.size())
void tmain();
int main() {tmain();return 0;}
// ios::sync_with_stdio(false), cin.tie(nullptr);
using ll = long long;
const int maxn = 15;
void solve();
inline void tmain() {
int t;
cin >> t;
while (t -- ) {
solve();
}
}
inline void solve() {
int n,x,p;
cin >> n >> x >> p;
// 因为(2n + 1) * 2n / 2 = (2n + 1) * n.(2n+1)*n是n的倍数,
int mx = min(n * 2, p); // 每2*n次就会循环,所以最大就是2*n。
bool ans = 0;
for (int i = 1;i <= mx;i++) {
ll t = 1ll * i * (i + 1) / 2;
if ((t + x)%n == 0) {
ans = 1;
break;
}
}
cout << (ans ? "Yes\n" : "No\n");
}
标签:Case,Pull,int,Welcome,Div,include,2n
From: https://www.cnblogs.com/FanWQ/p/17219560.html