摘要:种类并查集(食物链、关押罪犯) 记忆化dfs与拓扑排序之间的联系,bfs式拓扑排序 记忆化搜索/dp->dijkstra、spfa->次短路、k短路(A*) 2019年4月25日18:59:02 咕咕咕咕咕咕咕咕咕咕咕 kmp与mp,求字符串周期系列…… 2019年8月16日12:12:39 咕咕咕 阅读全文
posted @ 2019-01-26 16:58 wawcac 阅读 (82) 评论 (0) 编辑
摘要:```cpp include include include include include class Users{ private: std::map m; public: Users(){m["boss"]=std::string("123");} bool addUser(std::stri 阅读全文
posted @ 2019-12-15 20:19 wawcac 阅读 (38) 评论 (0) 编辑
摘要:```cpp include include include include include include class Courses { private: std::map c; //课程名字到编号的映射,编号从0开始 std::vector names; //课程编号到名字的映射 public 阅读全文
posted @ 2019-12-15 17:57 wawcac 阅读 (38) 评论 (0) 编辑
摘要:```cpp include include include include int n; bool needDebug; double m[1005][1005]={0}; double x[1005]={0}; void input() { printf("请输入系数矩阵的阶数(1~1000)\ 阅读全文
posted @ 2019-11-29 11:18 wawcac 阅读 (8) 评论 (0) 编辑
摘要:```assembly .model small ;递归fib,使用压缩BCD码,小端派 .data y1 byte 6 dup(0) y2 byte 6 dup(0) vis byte 1,1,1,61 dup(0) ;便于调试 num byte 6 dup(0),1,5 dup(0),1, 5 dup(0), 300 dup(0) ;di .stack 4096 ... 阅读全文
posted @ 2019-11-25 09:02 wawcac 阅读 (39) 评论 (0) 编辑
摘要:运行环境masm6.11 复杂度大概是$O(n\log n)$吧 阅读全文
posted @ 2019-11-21 22:09 wawcac 阅读 (51) 评论 (0) 编辑
摘要:"cf题面" 解题思路 比赛过程中好像完全没有想法来着,打完比赛,群里分享的做法也并没有看懂……一个月后的今天终于靠官方题解把题补了。 可以用间接法,总的子串数量减去不好的子串数量就是好的子串数量。而不好的子串就4种—— ABB...BB BAA...AA AA...AAB BB...BBA 其他情 阅读全文
posted @ 2019-11-06 17:50 wawcac 阅读 (27) 评论 (0) 编辑
摘要:"cf题面" 解题思路 比赛过程中想了一个贪心——把所有城市按照自建代价排序,排在第一的城市肯定自建,之后依次判断排在后面的城市要自建还是要连接前面的。这么做WA13了(第一次忘开 WA4)。 赛后看看题解,又参考了之前同样WA13的 Artoriax的代码,大概发现了这种做法的漏洞。假设自建代价是 阅读全文
posted @ 2019-11-02 15:08 wawcac 阅读 (93) 评论 (0) 编辑
摘要:"cf题面" 中文题面 给一棵无根树,每条边有边权。然后q个询问,每次询问给个w,求树上有多少对点之间的路径上的最大值小于等于w。 解题思路 离线。先把所有边按照边长升序排序,再把所有询问按照w升序排序。 之后从小到大处理每个询问。对于一个询问,首先由于询问已经排好序了,所以前一个答案是之前加的边对 阅读全文
posted @ 2019-09-05 15:09 wawcac 阅读 (85) 评论 (0) 编辑
摘要:"cf题面" 中文题意 求一个由最多26个、最少k个小写字母构成的,长度为n的字符串,这个字符串要满足的要求是——当其中字母按照p和q两个$1$~$n$的全排列重新排序时,新的字符串是按照升序排好序的(没要求老字符串排好序)。 解题思路 虚拟赛时其实已经走到了想出正解的路上~~我在路上了~~。正解是 阅读全文
posted @ 2019-09-05 13:47 wawcac 阅读 (136) 评论 (0) 编辑
摘要:"cf题面" 中文题意 给个n,再给两个长度为2的字符串,要求构造一个长度为$3n$的字符串,a、b、c三个字母各n个,且构造出的字符串子串中不能出现给定的两个字符串。如果不存在这样的字符串,就输出 解题思路 首先生成a、b、c的6个全排列,然后,每种全排列以两种方式扩大n倍——举个例子,n为3时, 阅读全文
posted @ 2019-09-05 11:25 wawcac 阅读 (162) 评论 (0) 编辑
摘要:"cf题面" 中文题意 给n个数,每次可以把其中一个数字位运算右移一位(即整除以二),问要至少操作几次才能让这n个数中有至少k个相等。 解题思路 这题还有个数据范围更小的 "简单版本" ,n和k是50,$a_i$还是2e5。 发现$1\leqslant a_i\leqslant 2⋅10^5$,这些 阅读全文
posted @ 2019-09-05 11:09 wawcac 阅读 (89) 评论 (0) 编辑
摘要:"cf题面" 中文题意 多组数据,每组给一个n给一个m,要求正整数$1$~$n$中,所有能被m整除的数的个位之和。 解题思路 首先,能被m整除的数的数量是$\lfloor\frac{n}{m}\rfloor$,手算一下(或者打表)可以发现能被m整除的数的个位会循环,循环节长度只和m的个位有关,循环节 阅读全文
posted @ 2019-09-05 10:24 wawcac 阅读 (121) 评论 (0) 编辑
摘要:"hdu题面" Time limit 6000 ms Memory limit 131072 kB OS Windows Source "2019 Multi University Training Contest 8" 吐槽 比赛时候一眼网络流,但数据范围显然不行,又看到这道题提交人数贼多,于是转 阅读全文
posted @ 2019-08-20 20:55 wawcac 阅读 (39) 评论 (0) 编辑
摘要:"hdu题面" 解题思路 首先我们要选一个起点,这个起点应该在第一个区间内,然后再看第二个区间在左边还是右边以便移动,但转念一想,我们可以把起点直接选在前一堆区间的交集上,于是思路就有了——依次把所有区间取交集,如果没有交集就搞一个新的区间,之后的接着取交集,得到一堆合并出来的区间。然后就在合并的区 阅读全文
posted @ 2019-08-18 16:03 wawcac 阅读 (49) 评论 (0) 编辑
摘要:[cf题面](https://codeforces.com/contest/1203/problem/F2 Time limit 2000 ms Memory limit 262144 kB 解题思路 贪心加01背包 就像这题的 "简单版本" 那样排序,然后把涨rating的工作先尽量做了。对于掉r 阅读全文
posted @ 2019-08-15 17:51 wawcac 阅读 (103) 评论 (0) 编辑