Submission #994864


Source Code Expand

#include <bits/stdc++.h>

using namespace std;

using ll = long long;
using ld = long double;
using D = double;
using uint = unsigned int;

#ifdef WIN32
    #define LLD "%I64d"
#else
    #define LLD "%lld"
#endif

#define pb push_back
#define mp make_pair
#define all(x) (x).begin(),(x).end()
#define fi first
#define se second

const int MAX = 300006;

ll n, a;
ll s[MAX + 5];

ll go(ll b)
{
    ll time = 0;
    ll speed = b;
    ll ans = n;
    while (speed <= n)
    {
        ans = min(ans, time + (n + speed - 1) / speed);
        speed *= 2;
        time += a + 2;
    }
    return ans;
}

inline ll f(ll n)
{
    return min({n, go(2 * a), go(2 * a + 1), go(2 * a + 2), go(2 * a + 3), go(a)});
}

inline ll g(ll n)
{
    pair<ll, int> ans = {n, 1};
    for (int i = 1; i <= n; i++) ans = min(ans, {s[i] + (n + i - 1) / i, i});
    if (n == 25) cout << ans.se << endl;
    return ans.fi;
}

inline ll g2(ll n)
{
    ll ans = n;
    for (int i = 1; i <= MAX; i++) ans = min(ans, s[i] + go(i));
    return ans;
}

int main()
{
    cin >> n >> a;
//     cout << f(n) << endl;
    
    s[1] = 0;
    for (int i = 2; i <= MAX; i++)
    {
        s[i] = i + a;
        for (int j = 1; j * j <= i; j++) if (i % j == 0)
        {
            s[i] = min(s[i], (i + j - 1) / j + s[j] + a);
            if (j > 1) s[i] = min(s[i], (i + (i / j) - 1) / (i / j) + s[i / j] + a);
        }
//         cout << i << ' ' << s[i] << endl;
    }
    cout << g2(n) << endl;
    
//     for (n = 1; n <= 1000; n++) if (g2(n) != g(n))
//     {
//         cout << n << ' ' << g2(n) << ' ' << g(n) << endl;
//     }
    
    return 0;
}

Submission Info

Submission Time
Task E - Cookies
User KAN
Language C++14 (GCC 5.4.1)
Score 500
Code Size 1701 Byte
Status WA
Exec Time 511 ms
Memory 2688 KB

Judge Result

Set Name sample dataset1 dataset2
Score / Max Score 0 / 0 500 / 500 0 / 500
Status
AC × 3
AC × 27
AC × 31
WA × 38
Set Name Test Cases
sample sample-01.txt, sample-02.txt, sample-03.txt
dataset1 sample-01.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
dataset2 sample-01.txt, sample-02.txt, 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, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, 02-25.txt, 02-26.txt, 02-27.txt, 02-28.txt, 02-29.txt, 02-30.txt, 02-31.txt, 02-32.txt, 02-33.txt, 02-34.txt, 02-35.txt, 02-36.txt, 02-37.txt, 02-38.txt, 02-39.txt, 02-40.txt
Case Name Status Exec Time Memory
01-01.txt AC 439 ms 2560 KB
01-02.txt AC 438 ms 2560 KB
01-03.txt AC 438 ms 2560 KB
01-04.txt AC 438 ms 2560 KB
01-05.txt AC 438 ms 2560 KB
01-06.txt AC 439 ms 2560 KB
01-07.txt AC 438 ms 2560 KB
01-08.txt AC 438 ms 2560 KB
01-09.txt AC 438 ms 2560 KB
01-10.txt AC 439 ms 2560 KB
01-11.txt AC 439 ms 2560 KB
01-12.txt AC 438 ms 2560 KB
01-13.txt AC 439 ms 2560 KB
01-14.txt AC 429 ms 2560 KB
01-15.txt AC 436 ms 2560 KB
01-16.txt AC 436 ms 2560 KB
01-17.txt AC 438 ms 2560 KB
01-18.txt AC 427 ms 2560 KB
01-19.txt AC 427 ms 2560 KB
01-20.txt AC 427 ms 2560 KB
01-21.txt AC 427 ms 2560 KB
01-22.txt AC 428 ms 2560 KB
01-23.txt AC 428 ms 2560 KB
01-24.txt AC 427 ms 2560 KB
01-25.txt AC 428 ms 2560 KB
01-26.txt AC 428 ms 2560 KB
02-01.txt AC 427 ms 2560 KB
02-02.txt WA 500 ms 2560 KB
02-03.txt WA 500 ms 2560 KB
02-04.txt WA 500 ms 2560 KB
02-05.txt WA 500 ms 2560 KB
02-06.txt WA 500 ms 2560 KB
02-07.txt WA 500 ms 2560 KB
02-08.txt WA 500 ms 2560 KB
02-09.txt WA 500 ms 2560 KB
02-10.txt WA 500 ms 2560 KB
02-11.txt WA 500 ms 2560 KB
02-12.txt WA 501 ms 2560 KB
02-13.txt WA 500 ms 2560 KB
02-14.txt WA 501 ms 2560 KB
02-15.txt WA 511 ms 2560 KB
02-16.txt WA 501 ms 2560 KB
02-17.txt WA 500 ms 2560 KB
02-18.txt WA 501 ms 2688 KB
02-19.txt WA 500 ms 2560 KB
02-20.txt WA 500 ms 2560 KB
02-21.txt WA 500 ms 2560 KB
02-22.txt WA 501 ms 2688 KB
02-23.txt WA 501 ms 2560 KB
02-24.txt AC 500 ms 2560 KB
02-25.txt WA 460 ms 2560 KB
02-26.txt WA 489 ms 2560 KB
02-27.txt WA 488 ms 2560 KB
02-28.txt WA 489 ms 2560 KB
02-29.txt WA 500 ms 2560 KB
02-30.txt WA 496 ms 2560 KB
02-31.txt WA 498 ms 2560 KB
02-32.txt WA 490 ms 2560 KB
02-33.txt WA 500 ms 2560 KB
02-34.txt WA 497 ms 2560 KB
02-35.txt WA 500 ms 2560 KB
02-36.txt WA 499 ms 2560 KB
02-37.txt WA 498 ms 2560 KB
02-38.txt WA 500 ms 2560 KB
02-39.txt WA 500 ms 2560 KB
02-40.txt WA 500 ms 2560 KB
sample-01.txt AC 428 ms 2560 KB
sample-02.txt AC 500 ms 2560 KB
sample-03.txt AC 430 ms 2560 KB