摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 有个性质。 如果p/q是分数的最简形式。 那么p/q能化成有限小数。 当且仅当q的质因数分解形式中只有质因子2和5 (且不能出现其他质因子) (也就是说q的质因子只能出现10的质因子里面出现过的 因为只有这样分母才能化成10^n 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 把x..y这条路径上的点标记一下。 然后从x开始dfs,要求不能走到那些标记过的点上。记录节点个数为cnt1(包括x) 然后从y开始dfs,也要求不能走到那些标记过的点上。记录节点个数为cnt2(包括y) 答案就为n (n 1) 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 我们考虑每个字符串中出现最多的字母出现的次数cnt[3] 对于这3个cnt的值。 如果cnt+ns[i].size() 那就有问题了。 因为每次变换的字母不能和原来的一样。 因此全都变成某个字母之后。接下来肯定会破坏这个全都一样 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 第一问是个最短路。 第二问。 利用第一问floyd算出来的任意两点之间的最短路。 那么枚举每一条边(x,y) 如果w[1][x]+cost[x][y]+w[y][n]==w[1][n] 那么就说明(x y)这条边是某条最短路上的 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 最大权闭合子图的模板题。 每个人对两个物品有依赖。 则相当于m+n个点 这m个点是m个用户。 每个用户的权值是正的,为这个用户获得的利益。 然后每个基站对应n个点。这n个点上的权值都是负数的。 表示代价。 然后就是最大权闭合子图 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 转化一下思路。 我们求出任意两个点之间到达 最少经过的障碍物的个数。 最后求出障碍物个数小于等于T的 枚举答案就好。 (任意两点间最少障碍物可以用一个类似spfa的方法求得 (很巧妙的转换 【代码】 cpp include de 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 如果点与点之间的距离都是1的话。 那么T次方之后的矩阵上a[1][n]就是所求答案了。 但是这一题的边权可能会大于1 但最多为10 很容易想到拆点。 我们把每个点又重新分为9个点。 x1,x2,x3..x9 然后对于所有的i,从 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 prufer数列的应用 http://www.cnblogs.com/AWCXV/p/7626625.html 这一题没有节点的度数不定。 因此。 所有节点的度数 1的和结果一定要是n 2. 否则就无解。 然后把tot代成n 2 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 边数一定要谨慎算。。 【代码】 cpp include define LL long long define rep1(i,a,b) for (int i = a;i = b;i ) define all(x) x.begin( 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 先建立一棵字典树。 显然,某一些节点上会被打上标记。 问题就转化成求所有标记的深度的和的最小值了。 (标记可以上移,但是不能在同一位置 则我们用树形动规的方法。 从底往上递归处理。 考虑以x为根的一棵子树。 如果这个节点被打上了 阅读全文