提出 #13210067


ソースコード 拡げる

Copy
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;
#define int ll

#define REP(i,n) for(int i=0;i<n;++i)
#define ALL(name) name.begin(),name.end()
#define SORT(name) sort(name.begin(), name.end())
#define ZERO(p) memset(p, 0, sizeof(p))
#define MINUS(p) memset(p, -1, sizeof(p))
#if 1
#  define DBG(fmt, ...) printf(fmt, ##__VA_ARGS__)
#else
#  define DBG(fmt, ...)
#endif

const ll LLINF = (1LL<<60);
const int INF = (1LL<<30);
const double DINF = std::numeric_limits<double>::infinity();
const int MOD = 1000000007;
#define MAX_N 100010

int N;
vector<int> A;

int func(int val) {
    int ret = 0;
    REP(i, N) {
        ret += abs(A[i] + val);
    }
    return ret;
}

signed main() {
    cin.tie(0); cout.tie(0);
    ios::sync_with_stdio(false);

    cin >> N;
    A.resize(N);
    int ans = 0;
    REP(i, N) { 
        cin >> A[i];
        A[i] -= (i + 1);
        ans += abs(A[i]);
    }
    if(ans == 0) {
        printf("0\n");
        return 0;
    }

    map<int, int> pat;
    REP(i, N) {
        pat[A[i]]++;
    }
    vector< pair<int, int> > v_pat;
    for(auto& tmp : pat) {
        v_pat.push_back(make_pair(tmp.second, tmp.first));
    }
    SORT(v_pat);
    reverse(v_pat.begin(), v_pat.end());

    int i_n = (v_pat.size() > 1000) ? 1000 : v_pat.size();
    REP(i, i_n) {
        ans = min(ans, func(-v_pat[i].second));
    }

    printf("%lld\n", ans);

    return 0;
}

提出情報

提出日時
問題 C - Linear Approximation
ユーザ VTR
言語 C++14 (GCC 5.4.1)
得点 0
コード長 1480 Byte
結果 WA
実行時間 345 ms
メモリ 20592 KB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 300
結果
AC × 4
AC × 11
WA × 8
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt
ケース名 結果 実行時間 メモリ
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
sample_04.txt AC 1 ms 256 KB
subtask_1_01.txt AC 1 ms 256 KB
subtask_1_02.txt WA 54 ms 3964 KB
subtask_1_03.txt WA 47 ms 3200 KB
subtask_1_04.txt WA 150 ms 9332 KB
subtask_1_05.txt WA 274 ms 16756 KB
subtask_1_06.txt AC 21 ms 1792 KB
subtask_1_07.txt WA 345 ms 19184 KB
subtask_1_08.txt WA 334 ms 20464 KB
subtask_1_09.txt WA 317 ms 20592 KB
subtask_1_10.txt WA 317 ms 18672 KB
subtask_1_11.txt AC 21 ms 1792 KB