码迷,mamicode.com
首页 > 编程语言 > 详细

HDU5032 -- Always Cook Mushroom 树状数组

时间:2015-09-15 14:46:44      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

题意:1000*1000的格子, 坐标为(1, 1) ~ (1000, 1000), 常数 A, B, 点(x,  y)权值为 (x + A) * (y + B),

q次询问, 每次询问(0, 0) (p,  0), (p, q)的直角三角形内的权值和。

作法: 离线处理, 把所有点和询问放到一起, 按斜率从小到大排序,

考虑每个询问, 那么对当前询问有贡献的点的斜率肯定小于等于该直角三角形斜边的斜率, 所有遇到一个点加入到树状数组, 然后每次询问就是取 区间和了。

 

HDU5032 -- Always Cook Mushroom 树状数组

标签:

原文地址:http://www.cnblogs.com/oneshot/p/4810123.html

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