2021/11/13模拟赛

8 : 00 − 8 : 30 8:00-8:30 8:008:30
看题,感觉 T 3 T3 T3bfs 可水。
8 : 30 − 9 : 20 8:30-9:20 8:309:20
先搞 T 2 T2 T2 20 20 20 分,深搜枚举每一种可能出现的情况。
9 : 20 − 10 : 50 9:20 - 10:50 9:2010:50
写了个 T 1 T1 T1 的模拟,然后有了思路。读入后有 排序,查找时能 二分,而且气球破了后相当于删除操作,首选 set 啊。 然后写了个 对拍跑数据代码 ,开始磕 正解 。感觉真的能搞出来。判断沿着当前方向能不能找到一个气球,找的时候用 stl中的 二分 套到set 上用,每找到一个后放进队里面,队有多长,答案就是多少。
然后 set 方面有个很焦灼的地方,得开成大小为 1 0 6 10^6 106set 数组。小的样例还得跑 300 + m s 300+ms 300+ms 3 3 3 个询问去掉俩还是那么长时间,气球数量减少一般还是那么长时间, set 数组的大小开小一点还是时间上就会减少很多,然后就想着要不要开小点数组,稳点拿 80 80 80 分。set 费我 300 m s 300ms 300ms ,题上说读入也得 200 m s 200ms 200ms ,相当于只有 0.5 s 0.5s 0.5s 的做题时间。肥肠害怕。
中间写的时候还忘了 lower_boundupper_bound 哪个是找大于,哪个是找大于等于。
10 : 50 − 11 : 40 10:50-11:40 10:5011:40
T 3 T3 T3 ,本来想 bfs 来跑,但是没有一下搞出来,就搞了个 dijkstra ,跑完后 dfs 验证路径,然后输出答案。感觉真往正解上靠还得写类似高精 mod 的东西,(不过还好模数是 int 以内的,其他方面要是都能处理好的话,应该问题不大)。
11 : 40 − 结 束 11:40-结束 11:40
T 4 T4 T4 输出 − 1 -1 1 ,然后检查 freopen ,文件名,版本。


T 1 T1 T1 现场 A A A 掉了,不过队列好像是不必要写的了。时限开成了 3 s 3s 3s 也没有被卡,还好没有把 set 开小。当时还想着会不会有人为了卡时间搞出来 二维线段树 ,或者 二维树状数组 之类的奇怪操作。

T 2 T2 T2 20 20 20 分写挂了,还没查出来是为什么,把 int 全换成 long long 的话从 W A WA WA 变成了 T L E TLE TLE。正解的话应该算是有贪心的思想,如果 i i i 个人的情况下就跟风,那就让他们跟风,如果没有跟风的,就找最便宜的收买。按照跟风人数,从多到少看着收买。有个很好的部分分的点是倒着来 f i , j f_{i,j} fi,j表示在后 i i i 个人当中收买了 j j j 个的最小花费。
考场上确实这样想了,但是没有处理出来,准确说是没有试着去写。用 就很好搞了。血亏了属于是。double kui 了属于是。

T 3 T3 T3 大意了,应该直接存成 string 类型,也正好有了按照题意比大小的功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值