UVa11054 Wine trading in Gergovia(贪心+思路)

来源:互联网 发布:刷q币软件2016 编辑:程序博客网 时间:2024/06/01 09:31

题目链接:https://vjudge.net/problem/UVA-11054

题目大意:给你一行数,让你移动每个点的数值然后让所有点的值都为0。

题目分析:按照顺序来,当前的点不管多了还是少了,它都会肯定会影响到下一个点,要么分给下一个点要么从下一个点抽出一部分让当前的点变为0;

题目做法:采用贪心法,On 扫描一遍,将每一个点处理为0,要么给下一个点,要么借下一个点。

学到的东西:思路思路思路!!!分析问题的思路。

代码:

#include <bits/stdc++.h>using namespace std;#define ll long longint main(){    int a[100100];    int x;while(cin>>x&&x){        ll ans=0,last=0;        for(int i=0;i<x;i++){            int a;cin>>a;            ans+=abs(last);            last+=a;        }        cout<<ans<<endl;    }}


原创粉丝点击