2016-SE01-team1
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
||User||Problem||Result||Memory||Time||Language||Length||Submit Time||
||Siunaus||K||WA|| || ||C++11 5.3.0||7902||2016-07-28 19:46:05||
||Siunaus||K||WA|| || ||C++11 5.3.0||7783||2016-07-28 19:38:11||
||Siunaus||K||TLE|| || ||C++11 5.3.0||7615||2016-07-28 19:30:02||
||Siunaus||H||AC||0||345||C++11 5.3.0||2001||2016-07-28 19:26:23||
||Siunaus||H||WA|| || ||C++11 5.3.0||1993||2016-07-28 19:23:04||
||Siunaus||H||RE|| || ||C++11 5.3.0||1994||2016-07-28 19:18:32||
||Siunaus||H||RE|| || ||C++11 5.3.0||1983||2016-07-28 19:16:06||
||Siunaus||G||AC||0||239||C++11 5.3.0||3152||2016-07-28 17:27:35||
||Siunaus||D||AC||0||79||C++11 5.3.0||1366||2016-07-28 17:10:04||
||Siunaus||G||WA|| || ||C++11 5.3.0||3162||2016-07-28 17:03:53||
||Siunaus||D||WA|| || ||C++11 5.3.0||787||2016-07-28 16:51:06||
||Siunaus||D||RE|| || ||C++11 5.3.0||717||2016-07-28 16:34:40||
||Siunaus||I||AC||0||316||C++11 5.3.0||1091||2016-07-28 16:01:49||
||Siunaus||E||AC||0||3||C++11 5.3.0||1757||2016-07-28 15:47:08||
||Siunaus||F||AC||0||6||C++ 5.3.0||861||2016-07-28 15:20:09||
||Siunaus||C||AC||0||3||C++11 5.3.0||480||2016-07-28 14:55:00||
||Siunaus||C||WA|| || ||C++11 5.3.0||599||2016-07-28 14:50:55||
||Siunaus||B||AC||0||3||C++ 5.3.0||803||2016-07-28 14:43:43||
比赛链接: http://acm.hust.edu.cn/vjudge/contest/124586#overview
jtjl & sficion
== 流水账 ==
== 总结 ==
== 题解 ==
BC签到题,略去不表。
=== D. Laptop Chargers [JTJL] ===
考虑到充电线可以无线随时切换,问题的本质只需要考虑总体的电量输入和消耗情况。
查询的时候要注意不是总量足够就一定能够用,因为电量不能在laptop之间转移,本身如果有过多的电量也只能浪费掉,所以需要分段处理或者二分答案。
=== E. Poker End Games [JTJL] ===
容易写出转移方程,可以考虑对马尔科夫链进行迭代或者直接高斯消元解概率。
但是由于本题的特殊性,转移的结果状态一定至少有一个是端点,所以其实是一对一的转移,所以只要找终点(可能是点也可能是环),递推系数求一元一次方程即可,然后倒推出答案,复杂度为O(n)。
=== F. Overlapping Characters [sfiction] ===
bitset暴力求出每个字符是否有唯一为非空的位置。
=== G. Reduce the Maintenance Cost [sfiction] ===
只有双连通关键边权值非0,且构成一棵树,二分答案后在树上贪心即可。权值计算需建树后DFS。稍麻烦,但思路非常自然。
=== H. Team Mathematics Olympiad [sfiction] ===
状态压缩DP。dp[i][j] 表示前 i 道题,每个人做题次数是 j(mask),因为 fail 的状态会有持续影响,需要分成 i-1 有没有 fail 两种状态。
=== I. Learning Vector [sfiction] ===
注意到解一定是个凸线(类似排序不等式),因此先对向量按斜率排序。dp[i][j][k] 表示前 j 个取了 i 个,结束高度为 k 的最大值。因为后续向量贡献计算需要使用高度但不需要使用x坐标,因此状态只保留高度信息。
== 补题 ==
AJK
| User | Problem | Result | Memory | Time | Language | Length | Submit Time |
| Siunaus | K | WA | C++11 5.3.0 | 7902 | 2016-07-28 19:46:05 | ||
| Siunaus | K | WA | C++11 5.3.0 | 7783 | 2016-07-28 19:38:11 | ||
| Siunaus | K | TLE | C++11 5.3.0 | 7615 | 2016-07-28 19:30:02 | ||
| Siunaus | H | AC | 0 | 345 | C++11 5.3.0 | 2001 | 2016-07-28 19:26:23 |
| Siunaus | H | WA | C++11 5.3.0 | 1993 | 2016-07-28 19:23:04 | ||
| Siunaus | H | RE | C++11 5.3.0 | 1994 | 2016-07-28 19:18:32 | ||
| Siunaus | H | RE | C++11 5.3.0 | 1983 | 2016-07-28 19:16:06 | ||
| Siunaus | G | AC | 0 | 239 | C++11 5.3.0 | 3152 | 2016-07-28 17:27:35 |
| Siunaus | D | AC | 0 | 79 | C++11 5.3.0 | 1366 | 2016-07-28 17:10:04 |
| Siunaus | G | WA | C++11 5.3.0 | 3162 | 2016-07-28 17:03:53 | ||
| Siunaus | D | WA | C++11 5.3.0 | 787 | 2016-07-28 16:51:06 | ||
| Siunaus | D | RE | C++11 5.3.0 | 717 | 2016-07-28 16:34:40 | ||
| Siunaus | I | AC | 0 | 316 | C++11 5.3.0 | 1091 | 2016-07-28 16:01:49 |
| Siunaus | E | AC | 0 | 3 | C++11 5.3.0 | 1757 | 2016-07-28 15:47:08 |
| Siunaus | F | AC | 0 | 6 | C++ 5.3.0 | 861 | 2016-07-28 15:20:09 |
| Siunaus | C | AC | 0 | 3 | C++11 5.3.0 | 480 | 2016-07-28 14:55:00 |
| Siunaus | C | WA | C++11 5.3.0 | 599 | 2016-07-28 14:50:55 | ||
| Siunaus | B | AC | 0 | 3 | C++ 5.3.0 | 803 | 2016-07-28 14:43:43 |
比赛链接: http://acm.hust.edu.cn/vjudge/contest/124586#overview
jtjl & sficion
流水账
总结
题解
BC签到题,略去不表。
D. Laptop Chargers [JTJL]
考虑到充电线可以无线随时切换,问题的本质只需要考虑总体的电量输入和消耗情况。
查询的时候要注意不是总量足够就一定能够用,因为电量不能在laptop之间转移,本身如果有过多的电量也只能浪费掉,所以需要分段处理或者二分答案。
E. Poker End Games [JTJL]
容易写出转移方程,可以考虑对马尔科夫链进行迭代或者直接高斯消元解概率。
但是由于本题的特殊性,转移的结果状态一定至少有一个是端点,所以其实是一对一的转移,所以只要找终点(可能是点也可能是环),递推系数求一元一次方程即可,然后倒推出答案,复杂度为O(n)。
F. Overlapping Characters [sfiction]
bitset暴力求出每个字符是否有唯一为非空的位置。
G. Reduce the Maintenance Cost [sfiction]
只有双连通关键边权值非0,且构成一棵树,二分答案后在树上贪心即可。权值计算需建树后DFS。稍麻烦,但思路非常自然。
H. Team Mathematics Olympiad [sfiction]
状态压缩DP。dp[i][j] 表示前 i 道题,每个人做题次数是 j(mask),因为 fail 的状态会有持续影响,需要分成 i-1 有没有 fail 两种状态。
I. Learning Vector [sfiction]
注意到解一定是个凸线(类似排序不等式),因此先对向量按斜率排序。dp[i][j][k] 表示前 j 个取了 i 个,结束高度为 k 的最大值。因为后续向量贡献计算需要使用高度但不需要使用x坐标,因此状态只保留高度信息。
补题
AJK