2018.01.19【GDKOI2018】模拟A组&B组

T1:很明显选出来的图形一定是一个三角形,那么我们就n^3枚举,然后用海伦公式计算。比赛时因为精度问题90分。

总结:处理精度问题的套路:把a==b写成abs(a-b)<0.00000000001


T2:很明显用线段树维护区间和。

对于1操作:首先二分求出一个y,使得y-a[i]+1-a[i]到y的值<=b[i]且这个值最大且在此前提下y最小。然后二分求出一个x使得a[i]到x的值=x-a[i]+1。那么答案就是x+1,y。然后再对这个区间进行区间修改,把这个区间填满。

对于2操作:求出区间值,然后把区间清空。

总结:对于操作1找y时,正确的打法如下:

1、求出能达到的最大值:min(a[i]到n的值,b[i])

2、二分时,若小于最大值则往右调,若等于最大值就更新答案且往左调,若大于最大值就往左调。


T3:通过暴力程序来找规律发现:把a、b的分界点标在线段上,使之分成许多条小线段,二每条小线段的值是相同的。然后我们就可以求出每一个小线段的值,加起来就好了。


T4:具体见OJ上的题解。

总结:比赛时还是被卡精度了,精度很重要。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值