随笔分类 - 搜索-剪枝优化
摘要:简单dfs,差分一下A数组和建出字典树能写得更方便,若不这么做代码时就会像我一样难受。 c++ include include include using namespace std; typedef long long ll; const int N = 100003; int a[13][N],
阅读全文
摘要:"http://www.lydsy.com/JudgeOnline/problem.php?id=1016" 统计每一个边权在最小生成树中使用的次数,这个次数在任何一个最小生成树中都是固定的(归纳证明)。 在同一个边权上对所有边权为这个的边暴力统计(可以用矩阵树定理),然后用并查集把这个边权的所有边
阅读全文
摘要:"http://codevs.cn/problem/1288/" loli秘制面向高一的搜索,好难啊QAQ 我本来想按照分母从大到小搜,因为这样分母从小到大枚举到的第一个可行方案就是最优方案。 但貌似会T。。。 所以按照分母从小往大搜,分母得有个上界。 设分母为$num$,则$\frac{step}
阅读全文
摘要:"http://www.lydsy.com/JudgeOnline/problem.php?id=3643" 因为$$\varphi(n)=\prod_i p_i^{k_i 1}(p_i 1),n=\prod_ip_i^{k_i}$$ 直接根据这个式子暴搜即可。
阅读全文
摘要:http://uoj.ac/problem/147 搜索时先枚举三顺子,双顺子和单顺子,然后贪心带牌和成三成双成单出。 QAQ
阅读全文
摘要:http://codevs.cn/problem/2083/ 奶牛搜索题。我加了如下剪枝: 1.用字符串hash判重。注意判重时也要对字符串长度判重,否则会出现两个字符串长度不同但hash值相同的情况,非常容易被卡hash。 2.先枚举O,再枚举C,W。枚举W时从后往前枚举。从网上的题解里看到的,具
阅读全文
摘要:因为一天机房都是断网状态,校内的小V评测这道题总显示Unaccept,所以下午放学后就和xiaoyimi晚上回家自习,来做一做这道题。 搜索+剪枝优化: 一开始我是顺着低位向高位填数,这么暴力在Vijos上有90分,如果NOIP能得这么多分我也甘心就写这个暴力吧 正解:先扫出字母出现的先后顺序,在这
阅读全文
摘要:这是今天下午的互测题,只得了60多分 分析一下错因: $dis[i][j]$只记录了相邻的两个岛屿之间的距离,我一开始以为可以,后来$charge$提醒我有可能会出现来回走的情况,而状压转移就一次,无法实现来回走的情况,所以加了一个类似$floyed算法$的三重循环来更新每个点的距离,然后状态转移就
阅读全文
摘要:此题poj1054上也有 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 struct lzr{ 6 int x,y; 7 }f[5003]; 8 int R,C; 9 boo
阅读全文