Warning: session_start(): open(/tmp/sess_aa432c3aa6fa106527aba3a7569f87a7, 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

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:die_java:front_page_summertrain3 [CVBB ACM Team]

用户工具

站点工具


2020-2021:teams:die_java:front_page_summertrain3

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
2020-2021:teams:die_java:front_page_summertrain3 [2020/07/24 20:01]
fyhssgss [训练总结]
2020-2021:teams:die_java:front_page_summertrain3 [2020/07/24 20:04] (当前版本)
fyhssgss
行 23: 行 23:
 当前位置有鱼那必拿,剩下只能有无诱饵的决策问题了。当前位置什么都没有肯定拿诱饵置换,有诱饵的话就需要考虑是拿诱饵还是换鱼,二分位置$pos$,令在这之前全拿诱饵,显然是满足单调性。 当前位置有鱼那必拿,剩下只能有无诱饵的决策问题了。当前位置什么都没有肯定拿诱饵置换,有诱饵的话就需要考虑是拿诱饵还是换鱼,二分位置$pos$,令在这之前全拿诱饵,显然是满足单调性。
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​bits/​stdc++.h>​ #​include<​bits/​stdc++.h>​
行 79: 行 80:
  
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== B.Classical String Problem ===== ===== B.Classical String Problem =====
  
行 92: 行 95:
 发现无论怎么移动,这个字符串一定成环状,只是起始位置改变,我们直接维护起点的位置即可 发现无论怎么移动,这个字符串一定成环状,只是起始位置改变,我们直接维护起点的位置即可
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​iostream>​ #​include<​iostream>​
行 134: 行 138:
     ​     ​
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== C.Operation Love ===== ===== C.Operation Love =====
  
行 146: 行 152:
 找到和手腕连接的部分,用叉积判断大拇指或者小拇指在左边还是右边。 找到和手腕连接的部分,用叉积判断大拇指或者小拇指在左边还是右边。
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​bits/​stdc++.h>​ #​include<​bits/​stdc++.h>​
行 206: 行 213:
 } }
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== D.Points Construction Problem ===== ===== D.Points Construction Problem =====
  
行 216: 行 225:
 发现按正方形涂是点对最小的做法,我们先按正方形涂,发现剩下的可以单独涂就单独涂 发现按正方形涂是点对最小的做法,我们先按正方形涂,发现剩下的可以单独涂就单独涂
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​iostream>​ #​include<​iostream>​
行 332: 行 342:
             ​             ​
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== E.Two Matchings ===== ===== E.Two Matchings =====
  
行 346: 行 358:
 次优的在避免相邻的基础上还需要尽可能的进,容易发现要使配对尽可能的近,只有通过4个一组配对和6个一组配对,在此基础上进行dp即可 次优的在避免相邻的基础上还需要尽可能的进,容易发现要使配对尽可能的近,只有通过4个一组配对和6个一组配对,在此基础上进行dp即可
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​algorithm>​ #​include<​algorithm>​
行 395: 行 408:
  
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== F.Fraction Construction Problem ===== ===== F.Fraction Construction Problem =====
  
行 417: 行 432:
 假如$b$是合数,但是不存在$b=f*k$,其中$f,k$互质,即$b$是某个质数的整数次幂,则需要对模方程组进行同时约分。 假如$b$是合数,但是不存在$b=f*k$,其中$f,k$互质,即$b$是某个质数的整数次幂,则需要对模方程组进行同时约分。
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​bits/​stdc++.h>​ #​include<​bits/​stdc++.h>​
行 512: 行 528:
 } }
 </​code>​ </​code>​
 +</​hidden>​
 +
 ===== G.Operating on a Graph ===== ===== G.Operating on a Graph =====
  
行 522: 行 540:
 直接用并查集维护组,set记录组里的边,每次合并用启发式合并就可以过掉了 直接用并查集维护组,set记录组里的边,每次合并用启发式合并就可以过掉了
  
 +<hidden 代码>
 <code cpp> <code cpp>
 #​include<​iostream>​ #​include<​iostream>​
行 608: 行 627:
 } }
 </​code>​ </​code>​
 +</​hidden>​
 ===== L.Problem L is the Only Lovely Problem ===== ===== L.Problem L is the Only Lovely Problem =====
  
2020-2021/teams/die_java/front_page_summertrain3.1595592094.txt.gz · 最后更改: 2020/07/24 20:01 由 fyhssgss