上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 26 下一页
摘要: 阅读题,概要:给出垃圾邮件和非垃圾邮件的集合,然后按照题目给出的贝叶斯公式计算概率一封邮件是垃圾邮件的概率。逐个单词判断,将公式化简一下就是在垃圾邮件中出现的次数和在总次数的比值,大于二分之一就算是垃圾邮件的单词。如果一个邮件里的垃圾邮件的单词出现次数超过给定比例就算是垃圾邮件。需要注意的地方是:一... 阅读全文
posted @ 2015-08-21 19:06 瑞宇 阅读(399) 评论(0) 推荐(0)
摘要: 递推就好了,用二项式定理算出所有连边的方案数,减去不合法的方案,每次选出一个孤立点,那么对应方案数就是上次的答案。枚举选几个孤立点和选哪些,选到n-1个点的时候相当于都不选,只减1。要用到高精度,直接开100*100的组合数数组会MLE,用滚动数组优化一下就好了。不会java,python太伤了#i... 阅读全文
posted @ 2015-08-21 18:13 瑞宇 阅读(218) 评论(0) 推荐(0)
摘要: 题目:http://codeforces.com/gym/100338/attachments贪心,每次枚举10的i次幂,除k后取余数r在用k-r补在10的幂上作为候选答案。#includeusing namespace std;typedef unsigned long long ull;cons... 阅读全文
posted @ 2015-08-21 18:04 瑞宇 阅读(246) 评论(0) 推荐(0)
摘要: 正反两次最短路用于判断边是不是最短路上的边,把最短路径上的边取出来建图。然后求割边。注意重边,和卡spfa。正权,好好的dijkstra不用,用什么spfa?#includeusing namespace std;typedef long long ll;#define fi first#defin... 阅读全文
posted @ 2015-08-21 17:23 瑞宇 阅读(245) 评论(0) 推荐(0)
摘要: 赤果果的kdTree。学习传送门:http://www.cnblogs.com/v-July-v/archive/2012/11/20/3125419.html其实就是二叉树的变形#includeusing namespace std;const int maxn = 5e4+6,K = 5;#de... 阅读全文
posted @ 2015-08-21 00:53 瑞宇 阅读(358) 评论(0) 推荐(0)
摘要: 题目:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=20&page=show_problem&problem=1758状态压缩的DP,dp[i][st]表示状态为st考虑后面i个人所有人最... 阅读全文
posted @ 2015-08-20 22:28 瑞宇 阅读(276) 评论(0) 推荐(0)
摘要: 队友套的可持续化线段树,徘徊在RE和MLE之间多发过的。。。复用结点新的线段树平均要log2N个结点。其实离线就好,按照时间顺序组织操作然后dfs。#include #include #include #include #include #include using namespace std;co... 阅读全文
posted @ 2015-08-20 20:16 瑞宇 阅读(202) 评论(0) 推荐(0)
摘要: 先把线按照距离原点的距离排序,然后用叉积把在同一条直线上的点放在一起,把在同一条线上的点中的前i个点当成一个点就转化成了分组背包。写if(kas++) putchar('\n') 居然PE了,PE选手#includeusing namespace std;int N,T;const int maxn... 阅读全文
posted @ 2015-08-20 18:33 瑞宇 阅读(245) 评论(0) 推荐(0)
摘要: 概要:有一树形结构的网络,要在一些结点安装服务器使得不是服务器的结点周围恰好有一个服务器,问服务器最小数量。先转成有根树(枚举子节点的时候忽略其父亲),然后dp[u][s]表示u的子树安装服务器的最小数量,影响决策的是u是不是服务器以及其父节点的状态,所以s的取值为u是服务器(0),u不是服务器u的... 阅读全文
posted @ 2015-08-20 09:52 瑞宇 阅读(254) 评论(0) 推荐(0)
摘要: 求一棵数的最大独立集结点个数并判断方案是否唯一。dp[i][j]表示以i为根的子树的最大独立集,j的取值为选和不选。决策:当选择i时,就不能选择它的子结点。当不选i时,它的子结点可选可不选。判断唯一性:当选择的某个子节点方案不唯一,父节点的方案就不唯一,或者某个子节点选或不选方案数一样。转移顺序:按... 阅读全文
posted @ 2015-08-19 23:25 瑞宇 阅读(189) 评论(0) 推荐(0)
摘要: 区间dp,切割dp[i][j]的花费和切法无关(无后效性)dp[i][j]表示区间i,j的花费,于是只要枚举切割方法就行了,区间就划分成更小的区间了。O(n^3)四边形不等式尚待学习#include //变量不要取成ignore left之类using namespace std;const int... 阅读全文
posted @ 2015-08-18 23:47 瑞宇 阅读(303) 评论(0) 推荐(0)
摘要: dp[i][j]表示前一个序列拿了i个颜色,后一个序列拿了j个颜色的最小花费。转移的时候显然只能向dp[i+1][j],或dp[i][j+1]转移,每增加拿走一个颜色,之前已经出现但没结束的颜色个数的跨度都增加1,为了在转移的时候快速算出这个值,先预处理出每个颜色在各个序列中的起始和终止位置。mem... 阅读全文
posted @ 2015-08-18 23:06 瑞宇 阅读(363) 评论(0) 推荐(0)
摘要: http://codeforces.com/gym/100650概要:给出一个缩写,和一些单词,从单词中按顺序选一些字母作为缩写,问方案数。限制:某些单词要忽略,每个单词至少要选一个字母。dp[i][j]表示到第i个单词的时候已经选了j个字母的方案数。很明显,当前字符ch是第j个字符的时候,第j-1... 阅读全文
posted @ 2015-08-18 22:17 瑞宇 阅读(354) 评论(0) 推荐(0)
摘要: http://codeforces.com/gym/100650阅读题,边界的cell的邻居要当成一个环形的来算,时间有8s,状态最多2^16种,所以直接暴力枚举就行了。另外一种做法是逆推。#includeusing namespace std;int m,n;const int maxn = 17... 阅读全文
posted @ 2015-08-18 18:11 瑞宇 阅读(258) 评论(0) 推荐(0)
摘要: 题目链接:http://codeforces.com/gym/100650根据给出的树和d,求出一些结点,这些结点形成子树的第d层结点数应该尽量多,具体要求可以参考题目。dfs一个结点前保存询问深度的答案,访问完以后减去之前的值就得到答案了。#includeusing namespace std;c... 阅读全文
posted @ 2015-08-18 18:06 瑞宇 阅读(172) 评论(0) 推荐(0)
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 26 下一页