はまやんはまやんはまやん

hamayanhamayan's blog

Buffet [AtCoder Beginner Contest 140 B]

https://atcoder.jp/contests/abc140/tasks/abc140_b

解説

https://atcoder.jp/contests/abc140/submissions/7443466

シミュレーションしていこう。
前に食べた料理の種類を記録しておけば、満足度Ciを得られるかどうかが分かる。

int N, A[20], B[20], C[20];
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> N;
    rep(i, 0, N) cin >> A[i], A[i]--;
    rep(i, 0, N) cin >> B[i];
    rep(i, 0, N - 1) cin >> C[i];

    int ans = 0;
    int pre = -2;
    rep(i, 0, N) {
        int eat = A[i];
        ans += B[eat];
        if(pre + 1 == eat) ans += C[eat - 1];
        pre = eat;
    }
    cout << ans << endl;
}