bzoj1679[Usaco2005 Jan]Moo Volume 牛的呼声

题意:

N只牛,每只牛都与其他N-1只牛聊着天。一个对话的进行,需要两只牛都按照和她们间距离等大的音量吼叫,计算音量和。N≤10000

题解:

第i只牛与前i-1只牛对话的音量和是x=sum[1..i-1]+sum[2..i-1]+sum[3..i-1]+...+sum[i-1..i-1],x+(sum[1..0]+sum[1..1]+sum[1..2]+sum[1..3]+...+sum[1..i-2])=sum[1..i-1]*(i-1),令sm[i]=sum[1..i],则x=sm[i-1]*(i-1)-sigma(j,1,i-2)sm[j],而这个sigma(j,1,i-2)sm[j]也可以在开始时求出。

代码:

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <algorithm>
 4 #define maxn 10100
 5 #define inc(i,j,k) for(int i=j;i<=k;i++)
 6 #define ll long long
 7 using namespace std;
 8
 9 inline int read(){
10     char ch=getchar(); int f=1,x=0;
11     while(ch<'0'||ch>'9'){if(ch=='-')f=-1; ch=getchar();}
12     while(ch>='0'&&ch<='9')x=x*10+ch-'0',ch=getchar();
13     return f*x;
14 }
15 int n; ll a[maxn],sms[maxn],smb[maxn],ans;
16 int main(){
17     n=read(); inc(i,1,n)a[i]=read(); sort(a+1,a+n+1); ans=0;
18     inc(i,1,n-1)a[i]=a[i+1]-a[i],sms[i]=sms[i-1]+a[i],smb[i]=smb[i-1]+sms[i];
19     inc(i,2,n)ans+=sms[i-1]*(i-1)-smb[i-2];
20     printf("%lld",ans*2); return 0;
21 }

20160727

转载于:https://www.cnblogs.com/YuanZiming/p/5713036.html

bzoj1679[Usaco2005 Jan]Moo Volume 牛的呼声*相关推荐

  1. 【BZOJ】1679: [Usaco2005 Jan]Moo Volume 牛的呼声(数学)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1679 水题没啥好说的..自己用笔画画就懂了 将点排序,然后每一次的点到后边点的声音距离和==(n-i ...

  2. POJ 2231 Moo Volume(递推、前缀和)

    题外话: POJ 2231 Moo Volume 题意: 解题过程: AC代码: 题外话: emm--第三套题好像综合了其他OJ的题目蛤,那么我就把题目分开了发了蛤蛤-- POJ 2231 Moo V ...

  3. Moo Volume

    Moo Volume 发现动态规划的大致特点,关键在于思维,找关系式子,代码倒是简单,主要是过思维关! 思路一: 从动态规划的角度入手 首先我们要知道这道题是让求一组数的所有的数的差的绝对值的和(双向 ...

  4. 1677: [Usaco2005 Jan]Sumsets 求和

    1677: [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 626  Solved: 348 [Sub ...

  5. bzoj 1677: [Usaco2005 Jan]Sumsets 求和(DP)

    1677: [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1012  Solved: 592 [Su ...

  6. [BZOJ1677] [Usaco2005 Jan]Sumsets 求和

    [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec Memory Limit: 64 MB Description Farmer John commanded hi ...

  7. 【bzoj1677】[Usaco2005 Jan]Sumsets 求和

    1677: [Usaco2005 Jan]Sumsets 求和 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 970  Solved: 562[Subm ...

  8. [Usaco2005 Jan]Muddy Fields泥泞的牧场

    Description 雨连续不断的击打了放牛的牧场,一个R行C列的格子(1<=R<=50,1<=C<=50).虽然这对草来说是件好事,但这却使得一些没有草遮盖的土地变得很泥泞 ...

  9. poj-2231(Moo Volume) 递推

    题意:给你n个数求n个数任意一个数与其他数之差的绝对值之和的和 题解:例如: 6 1 2 5 7 8 9 先排序 正向: 1 --->9                             ...

最新文章

  1. 基于ARP的网络扫描工具netdiscover常用命令集合大学霸IT达人
  2. git push 操作代码回退
  3. LVS DR模型配置示例
  4. java wmi远程桌面服务器_WMI实现远程监控多台windows服务器
  5. Leetcode589.N-ary Tree Preorder TraversalN叉树的前序遍历
  6. python迭代器_Python迭代器
  7. 软考-计算机系统知识整理
  8. 计算机开机数字键盘解锁,数字键盘怎么解锁
  9. mame linux 编译,完美编译街机模拟器MAME(Android版)基于MAME4all
  10. 快手:星星之火,寒冬燎原
  11. Java Word文档模板内容替换
  12. 图书管理系统项目导入
  13. 路由器dns服务器怎么才能自动改变,更改路由器DNS 提高网速又一方法技巧
  14. CRC校验——以SHT30温湿度传感器为例(内附SHT30的驱动代码)
  15. 微信html5 下拉刷新,【报Bug】Iphone6s微信浏览器打开H5页面,出现下拉刷新bug
  16. 基于双层优化的微电网系统规划设计方法matlab程序(yalmip+cplex)
  17. Java | 参数(Parameter)
  18. docker-registry登录认证
  19. 零代码平台-iwx,是想革我们程序员命?
  20. SQL Server 数据分组

热门文章

  1. The ntpath module
  2. springcloud注册中心eureka
  3. 02、体验Spark shell下RDD编程
  4. Android gravity和layout_gravity的区别
  5. js获取viewbag
  6. 数据库四大特性与隔离级别
  7. tortoisegit推送ssh-key需要输入用户信息
  8. JDBC批量操作性能提升
  9. 如何写一个bootloader
  10. iOS 面试之Block