Warning: session_start(): open(/tmp/sess_eb86340906abc93ac91a3be9352372f8, 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/d/de2edb2fcb553ea79b79c722a4e13dbc.captchaip failed

Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/actions.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/lib/tpl/dokuwiki/main.php on line 12
2020-2021:teams:hotpot:2020nowcoder6 [CVBB ACM Team]

用户工具

站点工具


2020-2021:teams:hotpot:2020nowcoder6

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
2020-2021:teams:hotpot:2020nowcoder6 [2020/07/31 11:43]
misakatao 更新
2020-2021:teams:hotpot:2020nowcoder6 [2020/07/31 16:51] (当前版本)
喝西北风
行 19: 行 19:
 ===题解=== ===题解===
  
-====B - ====+====B - Binary Vector====
  
-===solved by ===+===solved by gyp===
  
 ===题意=== ===题意===
 +
 +从0和1构成n维向量里随机选n个,求这n个线性无关的概率
  
 ===数据范围=== ===数据范围===
 +
 +$1\le n\le 2\cdot 10^7$
  
 ===题解=== ===题解===
  
-====C ====+只需算有多少组线性无关的向量。已经选出m个线性无关的向量。这m个向量可以张成m维空间,因此下一个有$2^n-2^m$种选择。最终答案是$2^n\cdot \prod{i=1}^{n-1} (2^n-2^i)$
  
-===solved by ===+====C - Combination of Physics and Maths==== 
 + 
 +===solved by gyp===
  
 ===题意=== ===题意===
 +
 +给定一个由正整数构成的矩阵。取它的一个子矩阵,使得这个子矩阵的元素之和除以最后一行的元素之和最大。求这个最大值
  
 ===数据范围=== ===数据范围===
 +
 +$1\le m,n \le 200$
  
 ===题解=== ===题解===
 +
 +最终一定是选一列中靠上的所有。O(mn)枚举即可。
  
 ====D - ==== ====D - ====
行 85: 行 97:
 ===题解=== ===题解===
  
-====H - ====+====H - Harmony Pairs====
  
-===solved by ===+===solved by gyp===
  
 ===题意=== ===题意===
 +
 +S(x)表示十进制数x每一位数字之和。给定n,求$0\le a\le b\le n$,​$S(a)>​S(b)$的数对(a,​b)的个数。
  
 ===数据范围=== ===数据范围===
 +$n\le 10^100$
  
 ===题解=== ===题解===
  
 +dp1[i][j]表示前i位a<​b<​n,S(a)-S(b)+1000=j的方案数
 +
 +dp2[i][j]表示前i位a<​b=n,S(a)-S(b)+1000=j的方案数
 +
 +dp3[i]表示前i位,a=b<​n的方案数。这里S(a)-S(b)+1000一定等于1000
 +
 +前i位a=b=n的方案数为1,S(a)-S(b)+1000一定等于1000。
 +
 +对每一位,枚举a,​b这一位的值,然后暴力分类转移即可。时间复杂度$O(100000\cdot l)$,其中l为n的长度。
 ====I - ==== ====I - ====
  
行 121: 行 145:
 $K$-约瑟夫变换本质也是一个置换,这个置换是固定的,所以我们对于每个环可以将其长度$\mod \ K$,这样我们可以在$O(len)$时间处理每个环变成了什么样,至于约瑟夫变换,可以每次通过在平衡树里query相应位置的数在$O(n \log n)$的时间内解决,因此总复杂度为$O(nm \log n)$ $K$-约瑟夫变换本质也是一个置换,这个置换是固定的,所以我们对于每个环可以将其长度$\mod \ K$,这样我们可以在$O(len)$时间处理每个环变成了什么样,至于约瑟夫变换,可以每次通过在平衡树里query相应位置的数在$O(n \log n)$的时间内解决,因此总复杂度为$O(nm \log n)$
  
-====K - ====+====K - K-Bag====
  
-===solved by ===+===solved by tyx===
  
 ===题意=== ===题意===
 +
 +定义一个序列是$K-Bag$的,当且仅当它是由若干个$1$到$K$的排列组成的,例如$1\ 2\ 3\ 3\ 1\ 2\ 3\ 2\ 1\ 1\ 2\ 3$,现在给出一个长度为$n$序列,问它有没有可能是一个$K-Bag$序列的子序列
  
 ===数据范围=== ===数据范围===
 +
 +$1 \le n \le 10^5$,$1 \le K \le 10^9$
  
 ===题解=== ===题解===
 +
 +当$K > n$的时候,这个序列最多被分成前一半后一半分别是两个排列的一部分,单独判断一下即可,当$K \le n$时,我们考虑在$O(n)$的时间内求出某个位置以及它之前的$K-1$个位置能否组成一个完整的排列,然后从头和尾分别找到一个最长的部分可以作为一个排列的一部分,然后我们从头上开始$K$个一步跳,如果能跳到尾部的部分就说明可以,如果都不行就不行
  
 =====Replay===== =====Replay=====
  
-第一小时:+第一小时:tyx和gyp开始想E,lxh开始想D,tyx先猜了一个结论但是WA,后来发现有问题并找到正解通过,lxh写出了一个版本D但是超时
  
-第二小时:+第二小时:lxh开始想G,tyx开始想K,gyp连续通过了B和C题
  
-第三小时:+第三小时:tyx写出了K但是WA,在找问题的时候lxh开始构造G但是一直WA,tyx找到了K的问题并通过
  
-第四小时:+第四小时:tyx开始想J,gyp开始想H,tyx想出了J并开始写但是一直超时,后来发现因为多组数据有一个部分没有初始化,修改后通过
  
-第五小时:+第五小时:gyp开始写H,lxh继续构造G但是没有通过,gyp最后没能写完H
  
 =====总结===== =====总结=====
  
-  * +  * 要注意各种细节从而尽量避免罚时 
 +  * 多组数据一定要注意初始化
2020-2021/teams/hotpot/2020nowcoder6.1596167003.txt.gz · 最后更改: 2020/07/31 11:43 由 misakatao