https://beta.atcoder.jp/contests/code-festival-2018-quala/tasks/code_festival_2018_quala_b
前提知識
解法
https://beta.atcoder.jp/contests/code-festival-2018-quala/submissions/3242960
「imos[i] := i番目のみかんが何個の区間で覆われているか」を作るために、imos法を用いよう。
imos[i]を0~N-1まで見ていって、1つでも覆われていれば+A, どこにも覆われていないなら+Bする。
これで答え。
int N, M, A, B; int imos[101]; //--------------------------------------------------------------------------------------------------- void _main() { cin >> N >> M >> A >> B; rep(i, 0, M) { int a, b; cin >> a >> b; a--; imos[a]++; imos[b]--; } rep(i, 1, N) imos[i] += imos[i - 1]; int ans = 0; rep(i, 0, N) { if (imos[i]) ans += A; else ans += B; } cout << ans << endl; }