首页 > 其他 > 详细

T2695 桶哥的问题——吃桶

时间:2019-05-28 20:11:29      阅读:106      评论:0      收藏:0      [点我收藏+]

 

题目描述

桶哥的桶没有送完,他还有n个桶。他决定把这些桶吃掉。他的每一个桶两个属性:种类ai?和美味值bi。若下标为x, y, z(下标从1开始)的三个桶满足:

x<z切x+y=z-2y且ax=az     那么他们构成一个套餐,会产生(x+z)*(bx-bz)的价值

问:一共会产生多少价值

技术分享图片

技术分享图片

技术分享图片

 

首先来讲暴力打法:

最暴力的显然就是n^3的三层循环枚举了——20分

再来说一下小小的优化:

我们发现每个套餐所产生的价值和y没有任何关系,而且题目中x+y=z-2y的条件等价于z-x=3y,也就是说只要z-x是3的倍数就可以,所以我们可以不一个个枚举,只需要枚举(z-x)%3==0的情况就好了——40分

接着,继续从条件入手:我们发现x和z的桶的种类是一样的,也就是说我们可以开一个vector数组来存储相同种类的桶,这样就可以进一步加快——60分

T2695 桶哥的问题——吃桶

原文:https://www.cnblogs.com/lcezych/p/10939826.html

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