Codeforces AIM Tech Round 5 总结

A:略
B:构造,考虑m最小为1,所以构造的两个数之和的数字和为1。下面给出一种构造方法,a=99…99(500个9)00…0(499个0)1, b=99…9(500个9)
C:给定n个矩形,找出一个点,使其至少被n-1个矩形覆盖。考虑按y从大到小线段树维护扫描线。但在考场我忽略了n个矩形会产生2*n个不同的横坐标,也就是说线段树维护的值域最坏在2*n,以至于fst。
D:给定n个操作,add p或accept p。add p表示添加一个价值为p的sell或buy(保证不重复)。accept p表示接受一个最优的sell或buy且这个值为p。求方案数mod1e9+7。(sell的最优质为sell集合内的最小值,buy的最优值为最大值,添加的sell不能低于buy的最大值,添加的buy不能低于sell的最小值)考虑用set暴力模拟,我们开三个set分别表示sell,buy,unknown。对于add操作,若p>=sell.begin(),则sell.insert(p)。若p<=*buy.rbegin(),则buy.insert(p)。否则unknow.insert(p)。对于accept操作,若p在unknown内,答案*2,否则再在sell和buy里查找。最后将unknown按p分成两部分比p小的插入sell,比p大的插入buy,情况unknown。答案就是ans(unknown.size()+1)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值