Warning: session_start(): open(/tmp/sess_83ae523197d627a3661102c7d9ee50d2, 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:farmer_john:2sozx:codeforces_round_639_unrated [CVBB ACM Team]

用户工具

站点工具


2020-2021:teams:farmer_john:2sozx:codeforces_round_639_unrated

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
2020-2021:teams:farmer_john:2sozx:codeforces_round_639_unrated [2020/05/08 11:56]
2sozx [C]
2020-2021:teams:farmer_john:2sozx:codeforces_round_639_unrated [2020/05/09 22:06] (当前版本)
2sozx
行 1: 行 1:
 =====A===== =====A=====
-  * 题意:​一个序列为$0,​1…n-1$,​定义一个变换,​每个位置$i$变换到位置$(i+a_i)\%n$处,​$|a_i|< =10^9$,​问是否有两个位置经过一次变换后变换到同一个位置+  * 题意:​一个序列为$0,​1…n-1$,​定义一个变换,​每个位置$i$变换到位置$(i+a_i)\%n$处,​$|a_i|\le10^9$,​问是否有两个位置经过一次变换后变换到同一个位置
  
   * 题解:​注意$a_i$可为负数   * 题解:​注意$a_i$可为负数
 =====B===== =====B=====
-  * 题意:​如果$N$和$S$在同一列或者同一行,那么$N$将会向$S$的方向移动一个单元格。现在给定一张图$n,​m< = 1000$,保证白格一定不会有$N$经过,黑格可能会有$N$经过。又要求每行每列都必须至少有一个$S$。求最少安排多少个$N$可以达成要求。+  * 题意:​如果$N$和$S$在同一列或者同一行,那么$N$将会向$S$的方向移动一个单元格。现在给定一张图$n,​m\le1000$,保证白格一定不会有$N$经过,黑格一定以通过吸引使得$N$经过。又要求每行每列都必须至少有一个$S$。求最少安排多少个$N$可以达成要求。
  
   * 题解:​若能完成,答案必为黑格的连通块数。若不能完成,​有以下几种情况   * 题解:​若能完成,答案必为黑格的连通块数。若不能完成,​有以下几种情况
行 11: 行 11:
     * 有全为白格的列,无全为白格的行     * 有全为白格的列,无全为白格的行
 =====C===== =====C=====
-  * 题意:​给出$n$个变元和一个由$m$个不等式组成的式子,每个不等式为$x_i<​x_j$,要求按$1$到$n$的顺序添加$n$个量词$\forall$与$\exists$使式子永真,要求$\forall$个数最多,或判断无解。 +  * 题意:​给出$n(n\le2*10^5)$个变元和一个由$m(m\le2*10^5)$个不等式组成的式子,每个不等式为$x_i<​x_j$,要求按$1$到$n$的顺序添加$n$个量词$\forall$与$\exists$使式子永真,要求$\forall$个数最多,或判断无解。 
-  * 题解:​如果出现环则无解。若有解则可贪心的从$1$至$n$选择$\forall$的使用+ 
 +  * 题解:​如果出现环则无解。若有解则可贪心的从$1$至$n$选择$\forall$的使用,​如果一个数已经是$\forall$,​那么他所能达到的点一定是$\exists$,​从$1$至$n$扫一遍即可 
 +=====D===== 
 +  * 题意:​长度为$n(n{\le}10^5)$的序列$a(a_i{\le}10^9)$,​令$f={\sum_{i=1}^n}b_i(a_i-b_i^2)$,​其中$0{\le}b_i{\le}a_i$且${\sum_{i=1}^n}b_i=k$,​$k{\le}{\sum_{i=1}^n}a_i$,​最大化$f$的值 
 + 
 +  * 题解:​对于序列中每一个位置$i$考虑如果$b_i+1$是什么情况,​$f(b_i+1)-f(b_i)=a_i-3b_i^2-3b_i-1$,​对于$b_i$是单调递减的,​因此有一个显然的思路,​即计算出每个位置的${\Delta}f(b_i)$,​每次选择${\Delta}f(b_i)$最大的位置$i$进行操作,​并将相应位置的$b_i+1$,​由于$k$过大,​因此我们可以二分最终的$\max{\Delta}f(b_i)$是多少即可
  
2020-2021/teams/farmer_john/2sozx/codeforces_round_639_unrated.1588910208.txt.gz · 最后更改: 2020/05/08 11:56 由 2sozx