首页 > Windows开发 > 详细

8-5 Wine trading in Gergovia Gergovia的酒交易 uva11054

时间:2019-02-22 12:04:32      阅读:175      评论:0      收藏:0      [点我收藏+]

等价转换思维题

题意: 直线上有n(2<=n<=100000)个等距的村庄  每个村庄要么买酒 要么卖酒  设第i个村庄对酒的需求量为ai  绝对值小于一千  其中ai大于0表示买酒   小于0表示卖酒   所有村庄供需平衡  

把k个单位的酒从一个村庄运到相邻的村庄需要k个单位的劳动力   计算最少需要多少劳动力可以满足所有村庄的需要求

 

这种较大数据求和的题目 sum一定要longlong!!!!

#include<bits/stdc++.h>
using namespace std;
#define N 100001
int a[N];
int main()
{
   int n;
   while(cin>>n,n)
   {
       for(int i=1;i<=n;i++)
          scanf("%d",&a[i]);
       long long sum=0;
       for(int i=1;i<=n-1;i++)
       {
            a[i+1]+=a[i];
            sum+=abs(a[i]); 
       }
       printf("%lld\n",sum);
   }
    return 0;
}

 

8-5 Wine trading in Gergovia Gergovia的酒交易 uva11054

原文:https://www.cnblogs.com/bxd123/p/10417557.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!