提出 #70988448


ソースコード 拡げる

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll gcd(ll a, ll b)
{
    while (b)
    {
        ll r = a % b;
        a = b;
        b = r;
    }
    return a;
}

int main()
{
    int n;
    ll x, y;
    cin >> n >> x >> y;
    vector<ll> a(n);
    for (int i = 0; i < n; ++i)
        cin >> a[i];

    ll d = y - x;
    ll g = gcd(x, d);
    ll dp = d / g;
    ll xp = x / g;

    for (int i = 1; i < n; ++i)
    {
        if (a[i] % dp != a[0] % dp)
        {
            cout << -1 << "\n";
            return 0;
        }
    }
    vector<ll> b(n);
    ll l = 0;
    ll r = 2e18;
    ll sum = 0;
    for (int i = 0; i < n; ++i)
    {
        ll diff = a[0] - a[i];
        ll k = diff / dp;
        b[i] = xp * k;

        sum += b[i];

        ll li = -b[i];
        ll ri = (ll)a[i] - b[i];

        if (li > l)
            l = li;
        if (ri < r)
            r = ri;
    }

    if (l > r)
    {
        cout << -1 << "\n";
        return 0;
    }

    cout << n * r + sum << "\n";

    return 0;
}

提出情報

提出日時
問題 C - Candy Tribulation
ユーザ Hacker_
言語 C++23 (GCC 15.2.0)
得点 350
コード長 1095 Byte
結果 AC
実行時間 60 ms
メモリ 6520 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 350 / 350
結果
AC × 3
AC × 46
セット名 テストケース
Sample 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt
All 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt
ケース名 結果 実行時間 メモリ
00-sample-01.txt AC 1 ms 3576 KiB
00-sample-02.txt AC 1 ms 3468 KiB
00-sample-03.txt AC 1 ms 3492 KiB
01-01.txt AC 27 ms 4016 KiB
01-02.txt AC 8 ms 3652 KiB
01-03.txt AC 33 ms 4272 KiB
01-04.txt AC 36 ms 4304 KiB
01-05.txt AC 22 ms 6320 KiB
01-06.txt AC 60 ms 6504 KiB
01-07.txt AC 56 ms 6452 KiB
01-08.txt AC 56 ms 6432 KiB
01-09.txt AC 56 ms 6440 KiB
01-10.txt AC 56 ms 6468 KiB
01-11.txt AC 56 ms 6444 KiB
01-12.txt AC 56 ms 6440 KiB
01-13.txt AC 42 ms 5556 KiB
01-14.txt AC 56 ms 6468 KiB
01-15.txt AC 56 ms 6504 KiB
01-16.txt AC 51 ms 6064 KiB
01-17.txt AC 56 ms 6488 KiB
01-18.txt AC 56 ms 6320 KiB
01-19.txt AC 49 ms 6064 KiB
01-20.txt AC 55 ms 6520 KiB
01-21.txt AC 56 ms 6460 KiB
01-22.txt AC 52 ms 6188 KiB
01-23.txt AC 56 ms 6440 KiB
01-24.txt AC 56 ms 6448 KiB
01-25.txt AC 44 ms 4528 KiB
01-26.txt AC 30 ms 4908 KiB
01-27.txt AC 46 ms 4600 KiB
01-28.txt AC 41 ms 5544 KiB
01-29.txt AC 55 ms 6468 KiB
01-30.txt AC 55 ms 6468 KiB
01-31.txt AC 36 ms 5308 KiB
01-32.txt AC 55 ms 6488 KiB
01-33.txt AC 56 ms 6320 KiB
01-34.txt AC 43 ms 5724 KiB
01-35.txt AC 55 ms 6452 KiB
01-36.txt AC 55 ms 6400 KiB
01-37.txt AC 31 ms 5040 KiB
01-38.txt AC 55 ms 6444 KiB
01-39.txt AC 56 ms 6460 KiB
01-40.txt AC 44 ms 4548 KiB
01-41.txt AC 41 ms 4520 KiB
01-42.txt AC 32 ms 4224 KiB
01-43.txt AC 54 ms 4824 KiB