Submission #2559765


Source Code Expand

#include <iostream>
#include <algorithm>
#include <climits>
using namespace std;

typedef long long ll;
const ll INF = LLONG_MAX;
#define REP(i, n) for (ll i = 0; i < n; i++)

int main() {
    ll n, x, a[4002], cnt[2002]{}, xmax = 0;
    cin >> n >> x;
    REP(i, n) {
        cin >> a[i];
        a[i + n] = a[i];  //n->1のループをしやすくする
    }
    for (ll i = 0; i < n; i++) {
        //各色どの色から変化させるのが最も早いか
        //その色と変化回数のmaxを記録
        ll amin = INF, imin = 0;
        for (ll j = 0; j < n; j++) {
            if (a[i + n - j] + j * x <= amin) {  //同じ時間のときは変化回数が多いほうがよい
                amin = a[i + n - j] + j * x;
                xmax = max(xmax, j);
                imin = (i + n - j) % n;
            }
        }
        cnt[imin]++;
    }
    ll ans = 0;
    REP(i, n) ans += a[i] * cnt[i];
    cout << ans + x * xmax << endl;
    return 0;
}

Submission Info

Submission Time
Task B - Colorful Slimes
User NOSS
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1006 Byte
Status WA
Exec Time 5 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 10
WA × 11
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
1_00.txt AC 4 ms 256 KB
1_01.txt AC 4 ms 256 KB
1_02.txt AC 5 ms 256 KB
1_03.txt AC 5 ms 256 KB
1_04.txt WA 5 ms 256 KB
1_05.txt AC 5 ms 256 KB
1_06.txt WA 5 ms 256 KB
1_07.txt AC 5 ms 256 KB
1_08.txt WA 5 ms 256 KB
1_09.txt AC 5 ms 256 KB
1_10.txt WA 4 ms 256 KB
1_11.txt WA 5 ms 256 KB
1_12.txt WA 4 ms 256 KB
1_13.txt WA 4 ms 256 KB
1_14.txt WA 5 ms 256 KB
1_15.txt WA 4 ms 256 KB
1_16.txt WA 4 ms 256 KB
1_17.txt WA 5 ms 256 KB