摘要:
http://poj.org/problem?id=2299题意 : 排序,求排序次数,本来以为用冒泡可以搞定,事实上,那么大的数据以及一个TLE告诉我,会超时.........思路 : 问了一下,这个题就是归并排序求逆序数,可以百度一下,看了白皮书#include#include#includeusing namespace std ;int A[500400],T[500400];long long cnt ;void merge_sort(int* A,int x,int y,int* T){ if(y-x>1) { int m = x+(y-x)/2 ; ... 阅读全文
摘要:
http://poj.org/problem?id=3080题意 : 给你几个DNA序列,让你找他们的共同的最长的子串,若是子串长度小于3,就输出no significant commonalities,否则就输出公共的那个子串,若是多个子串长度相同,就输出字典序最小的那一个子串。思路 : 这个题的话就暴搜加枚举。。。。。。 1 #include 2 #include 3 #include 4 using namespace std ; 5 int main() 6 { 7 char ch[110][110],sh[110],zh[110]; 8 int m ; 9 s... 阅读全文
摘要:
http://poj.org/problem?id=3253就是一个哈夫曼树,题目下边有提示,所以题意还是好理解的#include#include#include#includeusing namespace std;int main (){ map tra; char s[100011], str[100011], s1[100011]; while (gets(s)&&s[0]) { sscanf(s,"%s %s",str,s1);//将输入的字符串,空格前边的赋给str串,后边的赋给s1串 tra.insert(pair(s1,str... 阅读全文
摘要:
http://poj.org/problem?id=1611这个题的话一看就知道是并查集,0号是已经被感染的,凡是与0号在一组的都是感染者 1 #include 2 #include 3 #include 4 using namespace std ; 5 int bing[30100],a[30100]; 6 int findx(int x) 7 { 8 int r = x ; 9 while(bing[r] != r)10 r = bing[r] ;11 return r ;12 }13 int findy(int x)//递归往下找一组的14 {1... 阅读全文