摘要:
请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非 阅读全文
摘要:
①克鲁斯卡尔算法(Kruskal) n是顶点数,m是边数; cnt是已连的边数,如果已连的边数=总点数-1,即可跳出。 #include<bits/stdc++.h> #define MAX 1005 using namespace std; int p[MAX],n,m; struct edge{ 阅读全文
摘要:
呵呵。大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人、父母、祖父母、曾祖父母、高祖父母)则不可通婚。本题就请你帮助一对有情人判断一下,他们究竟是否可以成婚? 输入格式: 输入第一行给出一个正整数N(2 ≤ N ≤10^4),随后N行,每行按以下格式给出一个人的信息: 其中I 阅读全文
摘要:
农夫要修理牧场的一段栅栏,他测量了栅栏,发现需要N块木头,每块木头长度为整数Li个长度单位,于是他购买了一条很长的、能锯成N块的木头,即该木头的长度是Li的总和。 但是农夫自己没有锯子,请人锯木的酬金跟这段木头的长度成正比。为简单起见,不妨就设酬金等于所锯木头的长度。例如,要将长度为20 阅读全文
摘要:
Description 给定一系列非负整数,求最长的连续子序列,使其和是7的倍数。 Input 第一行为正整数N(1<=N<=50000),接下来有N行,每行有一个非负整数,所有整数不大于10^6。 Output 如果存在连续子序列,其和为7的倍数,则输出子序列长度,如果不存在则输出0。 Sampl 阅读全文
摘要:
Description 给定两个集合A和B的所有元素,计算它们的交、并、差集。 Input 输入数据有多组,第一行为数据的组数T,接下来有2T行,每组数据占2行,每行有若干个整数,第一行的所有整数构成集合A,第二行的所有整数构成集合B,分别用空格分隔。A和B最多分别不超过100个元素。 Output 阅读全文
摘要:
①基础并查集算法 ②并查集加秩数组算法(计算每个家族里的总人数) 阅读全文
摘要:
①巴什博弈(Bash Game) 有n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个,最后取光者得胜。 显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先取者拿走多少个,后取者都能够一次拿走剩余的物品,后取者取胜。因此我们发现了如何取胜的法则: 如果n=(m+1)*k 阅读全文
摘要:
ps:以下的大数只考虑正数! string sum(string s1,string s2) { if(s1.length()<s2.length()) { string temp=s1; s1=s2; s2=temp; } int i,j; for(i=s1.length()-1,j=s2.len 阅读全文
摘要:
①埃拉托斯特尼筛法 要得到自然数n以内的全部素数,必须把不大于 的所有素数的倍数剔除,剩下的就是素数。 数组中值为0的元素,其下标即为素数! ps:复杂度O(nloglogn),还可以优化! ②线性筛选法——欧拉筛法 欧拉筛法保证每个合数只会被它的最小质因数筛去,时间复杂度降低到O(n) 数组里的下 阅读全文
摘要:
先贴上一张组合数的基本公式吧,在这里我们暂且规定n为下标,m为上标(n≥m) ①普通方法计算组合数 ②运用对数函数计算组合数(可以用于处理较大的数值) (1) 在c语言中,log函数也就是我们通常所说的ln函数,即以e为底的对数函数 (2) s1作为分子,从m+1累乘至n;s2作为分母,从1累乘至n 阅读全文