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

Codeforces 1119E(贪心)

时间:2019-04-07 12:56:57      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:方法   code   def   codeforce   ref   int   write   ble   pre   

题目传送

贪心方法

按边从小到大扫,先凑3个,没凑足的记录一下数量,后面大的优先跟这些凑,俩带走一个,多余的再凑3个,再……就这样走到最后即可。

const int maxn = 3e5 + 5;
int n;
ll ans, last;

int main() {
    read(n);
    rep(i, 1, n) {
        int a;
        read(a);
        if (a >= last * 2)  a -= last * 2, ans += last, last = 0;
        else    ans += a / 2, last -= a / 2, a %= 2;
        ans += a / 3;
        a %= 3;
        last += a;
    }
    writeln(ans);
    return 0;
}

Codeforces 1119E(贪心)

标签:方法   code   def   codeforce   ref   int   write   ble   pre   

原文地址:https://www.cnblogs.com/AlphaWA/p/10664522.html

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