码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Round #655 (Div. 2) D. Omkar and Circle

时间:2020-07-12 22:17:01      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:题意   代码   its   ref   div   href   test   删除   names   

题目链接:https://codeforces.com/contest/1372/problem/D

题意

给出奇数个数围成的环,每次可以将一个数替换为相邻两个数的和并删除相邻的两个数,问最后余下的数的最大值。

题解

即从 $n$ 个数中选取 $\frac{n+1}{2}$ 个数,且这些数中最多有一对数相邻的和的最大值。

代码

#include <bits/stdc++.h>
using ll = long long;
using namespace std;
int main() {
    int n; cin >> n;
    int a[n] = {};
    ll sum = 0, now = 0;
    for (int i = 0; i < n; i++) {
        cin >> a[i];
        sum += a[i];
        if (i % 2 == 0) now += a[i];
    }
    ll ans = now;
    for (int i = 1; i < n; i++) {
        now = sum - now + a[i - 1];
        ans = max(ans, now);
    }
    cout << ans << "\n";
}

 

Codeforces Round #655 (Div. 2) D. Omkar and Circle

标签:题意   代码   its   ref   div   href   test   删除   names   

原文地址:https://www.cnblogs.com/Kanoon/p/13289939.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!