Warning: session_start(): open(/tmp/sess_6814d260a1242cc80c42243e0cb16469, O_RDWR) failed: No space left on device (28) in /data/wiki/inc/init.php on line 239
Warning: session_start(): Failed to read session data: files (path: ) in /data/wiki/inc/init.php on line 239
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/auth.php on line 430
Writing /data/wiki/data/cache/8/878e000dca5c08fe55e62fff31fad8b7.captchaip failed
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
====== 比赛地址 ======
[[https://codeforces.com/group/azDPdoF24f/contest/290092|Codeforces Gym]]
====== [A] Hacker Cups and Balls ======
===== 题意 =====
给出一个排列,有一系列操作,每次会选中一段区间,将区间排序后正序或者反序放回去.求最后在最中间的元素是什么.
===== 题解 =====
二分答案+线段树.
二分最后的答案,将原序列中大于等于这个数的数视为1,小的视为0.排序操作就可以看做将整个区间的1全部挪到左边或者右边.线段树维护下区间和以及区间赋值操作就行了.
====== [C] Crazy Dreamoon ======
===== 题意&题解 =====
签到题
====== [G] Dreamoon and NightMarket ======
===== 题意 =====
给出一个集合,定义一个集合的价值为其中所有元素的和.求这个集合所有子集中,价值第$k$小的子集的价值.
===== 题解 =====
用一个堆维护价值即可.
====== [H] Split Game ======
===== 题意 =====
给出一个多边形,问用一条经过原点的直线最多能将这个多边形分为几部分.
===== 题解 =====
显然,这条直线一定通过多边形的顶点.将点按照斜率排序,从上往下扫描,如果扫到某个顶点,发现它和之前的顶点构成了一个类似三角形的东西,说明此时多划分出了一个多边形.同理再判断下少划分多边形的情况即可.
====== 总结 ======
这场主要的问题还是开题顺序,如果一开始就让tky写G的话,罚时会少很多,也能腾出时间去想I题与J题.时间再充裕些的话这两道题都是可以推出来的.之后要注意不能因为不是面对面做题就减少了交流与换题,卡壳后要及时沟通.