結果
問題 | No.1200 お菓子配り-3 |
ユーザー |
👑 ![]() |
提出日時 | 2020-08-28 22:49:52 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 777 bytes |
コンパイル時間 | 608 ms |
コンパイル使用メモリ | 70,928 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-14 16:26:54 |
合計ジャッジ時間 | 27,495 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 29 WA * 2 |
ソースコード
#include<iostream>#include<vector>using namespace std;using ll = long long;vector<ll> Divisors(ll N) {ll i = 1;vector<ll> u;while (i * i <= N) {if (N % i == 0) {u.push_back(i);if (i * i != N) {u.push_back(N / i);}}i++;}return u;}int main() {ll S, X, Y;ll K, a, p, B, C;vector <ll> A;vector <ll> u;cin >> S;for (int j = 0; j < S; j++) {cin >> X >> Y;u = Divisors(X + Y);K = 0;for (int i = 0; i < u.size();i++) {a = u.at(i);if (a == 1) continue;else if (a == 2) {K += (X == Y);}else {p = a - 1;B = (p * X - Y);C = (-X + p * Y);if (B > 0 && C > 0 && B % (p * p - 1) == 0 && C % (p * p - 1) == 0) {K++;}}}cout << K << endl;}return 0;}