提出 #68766820


ソースコード 拡げる

/* Author : goats_9 */

#include <bits/stdc++.h>
using namespace std;
using ll = long long;

ll binsqrt(ll n) {
    ll l = 0, r = 1e9;
    while (r - l > 1) {
        ll g = (l + r) / 2;
        if (g * g <= n) l = g;
        else r = g;
    }
    return l;
}

int main() {
    cin.tie(0)->sync_with_stdio(false);
    ll x;
    cin >> x;
    ll y = 4 * x - 1;
    set<ll> v;
    if (y < 0) {
        y *= -1;
        for (ll i = 1; i * i <= y; i++) {
            if (y % i) continue;
            ll j = y / i;
            ll s = i + j;
            if (s % 4 != 2) continue;
            s /= 2;
            ll n = (s - 1) / 2;
            ll sq = n * (n + 1) + x;
            if (sq >= 0) {
                ll l = binsqrt(sq);
                if (l * l == sq) v.insert(n);
            }
            n = (s + 1) / 2, n *= -1;
            sq = n * (n + 1) + x;
            if (sq >= 0) {
                ll l = binsqrt(sq);
                if (l * l == sq) v.insert(n);
            }
        }
    } else {
        for (ll i = 1; i * i <= y; i++) {
            if (y % i) continue;
            ll j = y / i;
            ll d = j - i;
            if (d % 4 != 2) continue;
            d /= 2;
            ll n = (d - 1) / 2;
            ll sq = n * (n + 1) + x;
            if (sq >= 0) {
                ll l = binsqrt(sq);
                if (l * l == sq) v.insert(n);
            }
            n = (d + 1) / 2, n *= -1;
            sq = n * (n + 1) + x;
            if (sq >= 0) {
                ll l = binsqrt(sq);
                if (l * l == sq) v.insert(n);
            }
        }
    }
    cout << v.size() << '\n';
    for (auto u : v)
        cout << u << ' ';
    return 0;
}

提出情報

提出日時
問題 G - sqrt(n²+n+X)
ユーザ goats_9
言語 C++ 20 (gcc 12.2)
得点 0
コード長 1752 Byte
結果 WA
実行時間 60 ms
メモリ 3736 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 575
結果
AC × 3
AC × 24
WA × 39
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_handmade_00.txt, 01_handmade_01.txt, 01_handmade_02.txt, 01_handmade_03.txt, 01_handmade_04.txt, 01_handmade_05.txt, 01_handmade_06.txt, 01_handmade_07.txt, 01_handmade_08.txt, 01_handmade_09.txt, 01_handmade_10.txt, 01_handmade_11.txt, 01_handmade_12.txt, 01_handmade_13.txt, 01_handmade_14.txt, 01_handmade_15.txt, 01_handmade_16.txt, 01_handmade_17.txt, 01_handmade_18.txt, 01_handmade_19.txt, 01_handmade_20.txt, 01_handmade_21.txt, 01_handmade_22.txt, 01_handmade_23.txt, 01_handmade_24.txt, 01_handmade_25.txt, 01_handmade_26.txt, 01_handmade_27.txt, 01_handmade_28.txt, 01_handmade_29.txt, 01_handmade_30.txt, 01_handmade_31.txt, 01_handmade_32.txt, 01_handmade_33.txt, 01_handmade_34.txt, 01_handmade_35.txt, 01_handmade_36.txt, 01_handmade_37.txt, 01_handmade_38.txt, 01_handmade_39.txt, 01_handmade_40.txt, 01_handmade_41.txt, 01_handmade_42.txt, 01_handmade_43.txt, 01_handmade_44.txt, 01_handmade_45.txt, 01_handmade_46.txt, 01_handmade_47.txt, 01_handmade_48.txt, 01_handmade_49.txt, 02_radom_00.txt, 02_radom_01.txt, 02_radom_02.txt, 02_radom_03.txt, 02_radom_04.txt, 02_radom_05.txt, 02_radom_06.txt, 02_radom_07.txt, 02_radom_08.txt, 02_radom_09.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 1 ms 3488 KiB
00_sample_01.txt AC 1 ms 3312 KiB
00_sample_02.txt AC 1 ms 3432 KiB
01_handmade_00.txt AC 1 ms 3396 KiB
01_handmade_01.txt AC 1 ms 3500 KiB
01_handmade_02.txt AC 1 ms 3312 KiB
01_handmade_03.txt AC 1 ms 3504 KiB
01_handmade_04.txt AC 1 ms 3400 KiB
01_handmade_05.txt AC 1 ms 3612 KiB
01_handmade_06.txt AC 1 ms 3500 KiB
01_handmade_07.txt AC 1 ms 3504 KiB
01_handmade_08.txt AC 1 ms 3500 KiB
01_handmade_09.txt AC 1 ms 3364 KiB
01_handmade_10.txt AC 1 ms 3484 KiB
01_handmade_11.txt AC 1 ms 3428 KiB
01_handmade_12.txt AC 1 ms 3468 KiB
01_handmade_13.txt AC 1 ms 3428 KiB
01_handmade_14.txt AC 1 ms 3500 KiB
01_handmade_15.txt AC 1 ms 3436 KiB
01_handmade_16.txt AC 1 ms 3356 KiB
01_handmade_17.txt AC 1 ms 3412 KiB
01_handmade_18.txt AC 1 ms 3608 KiB
01_handmade_19.txt AC 1 ms 3360 KiB
01_handmade_20.txt AC 1 ms 3396 KiB
01_handmade_21.txt WA 59 ms 3612 KiB
01_handmade_22.txt WA 46 ms 3368 KiB
01_handmade_23.txt WA 49 ms 3504 KiB
01_handmade_24.txt WA 24 ms 3608 KiB
01_handmade_25.txt WA 32 ms 3488 KiB
01_handmade_26.txt WA 48 ms 3396 KiB
01_handmade_27.txt WA 60 ms 3432 KiB
01_handmade_28.txt WA 59 ms 3392 KiB
01_handmade_29.txt WA 59 ms 3520 KiB
01_handmade_30.txt WA 59 ms 3436 KiB
01_handmade_31.txt WA 59 ms 3456 KiB
01_handmade_32.txt WA 59 ms 3400 KiB
01_handmade_33.txt WA 59 ms 3412 KiB
01_handmade_34.txt WA 59 ms 3372 KiB
01_handmade_35.txt WA 60 ms 3500 KiB
01_handmade_36.txt WA 59 ms 3424 KiB
01_handmade_37.txt WA 59 ms 3496 KiB
01_handmade_38.txt WA 59 ms 3364 KiB
01_handmade_39.txt WA 59 ms 3508 KiB
01_handmade_40.txt WA 59 ms 3500 KiB
01_handmade_41.txt WA 59 ms 3500 KiB
01_handmade_42.txt WA 59 ms 3488 KiB
01_handmade_43.txt WA 59 ms 3368 KiB
01_handmade_44.txt WA 59 ms 3420 KiB
01_handmade_45.txt WA 59 ms 3500 KiB
01_handmade_46.txt WA 59 ms 3612 KiB
01_handmade_47.txt WA 59 ms 3428 KiB
01_handmade_48.txt WA 59 ms 3368 KiB
01_handmade_49.txt WA 52 ms 3736 KiB
02_radom_00.txt WA 51 ms 3404 KiB
02_radom_01.txt WA 44 ms 3608 KiB
02_radom_02.txt WA 23 ms 3432 KiB
02_radom_03.txt WA 56 ms 3500 KiB
02_radom_04.txt WA 56 ms 3368 KiB
02_radom_05.txt WA 44 ms 3372 KiB
02_radom_06.txt WA 39 ms 3488 KiB
02_radom_07.txt WA 31 ms 3500 KiB
02_radom_08.txt WA 44 ms 3520 KiB
02_radom_09.txt WA 52 ms 3408 KiB