2017-Sp320-team2

从 Trac 迁移的文章

这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。

原文章内容如下:

== 流水账 ==
=== chenjb ===
=== oipotato ===

=== subconscious  ===

== 题解 == 

 * A:2的倍数或者3的倍数无解,其他每一行shift 2即可。

 * B:

 * C:用一个大的set维护所有点到达火车的事件。对于同一时间到达的事件一起处理,提前计算出这一批到达的火车的上铁轨顺序和到达时间,注意铁轨长度为1时,不存在铁轨上有火车这一情况,需要特判。

 * D:转化成询问区间不同元素个数,随意莫队一下就能冲过去了,也可以离线+线段树。

 * E:分的策略:x=y,分1和x-1;x>y,要么分1和x-1,要么x/2,然后模拟。

 * F:

 * G:全部加起来求出谁是univ,然后根据每个人这个值,选较小的0.4n个人设为0;然后考虑每个人最小的minp=min(a[i][j]/ave[j]),minp<=0.3设为2,否则设为1。反正就是调参。

 * H:换根dp。

 * I:分28和27,然后指数暴力打表。

 * J:暴力判,注意到只会经过O(n)个方块,所以是30^5^。

流水账

chenjb

oipotato

subconscious

题解

  • A:2的倍数或者3的倍数无解,其他每一行shift 2即可。
  • B:
  • C:用一个大的set维护所有点到达火车的事件。对于同一时间到达的事件一起处理,提前计算出这一批到达的火车的上铁轨顺序和到达时间,注意铁轨长度为1时,不存在铁轨上有火车这一情况,需要特判。
  • D:转化成询问区间不同元素个数,随意莫队一下就能冲过去了,也可以离线+线段树。
  • E:分的策略:x=y,分1和x-1;x>y,要么分1和x-1,要么x/2,然后模拟。
  • F:
  • G:全部加起来求出谁是univ,然后根据每个人这个值,选较小的0.4n个人设为0;然后考虑每个人最小的minp=min(a[i][j]/ave[j]),minp<=0.3设为2,否则设为1。反正就是调参。
  • H:换根dp。
  • I:分28和27,然后指数暴力打表。
  • J:暴力判,注意到只会经过O(n)个方块,所以是305