- 博客(24)
- 资源 (3)
- 收藏
- 关注
原创 结构体二级排序-改进
昨天向果果学的,自己之前一直用qsort,好麻烦= =#include#include#include#define MAX 3500using namespace std;int flag[MAX];struct node{ int w,d; };node a[MAX];int cmp(node x, node y){ if(x
2013-09-27 14:11:34 425
原创 next_permutation toj,poj 上习题小结
//next_permutation--sample#include#includeusing namespace std;int main(){ int a[10],n; cin>>n; for(int i=0;i<n;i++) cin>>a[i]; sort(a,a+n); while(next_permutation(a,a+n))
2013-09-27 14:09:51 419
转载 dijkstra算法与prim算法的区别
dijkstra算法与prim算法的区别源地址:http://www.cnblogs.com/growup/archive/2010/11/13/1971536.html1.先说说prim算法的思想:众所周知,prim算法是一个最小生成树算法,它运用的是贪心原理(在这里不再证明),设置两个点集合,一个集合为要求的生成树的点集合A,另一个集合为未加
2013-09-26 00:06:26 602
原创 水题三道
//toj3801#include#includeusing namespace std;int main(){ int n,len,min,i,j,k,m; char a[101][101]; while(cin>>n) { if(n==0)break; min=200; for(i=0;i<n;i++)
2013-09-25 14:49:46 667
原创 《算法竞赛入门经典》中的部分代码实现
//求周期串--算法竞赛入门经典//如输入HOHOHO,输出2#include#include#includeusing namespace std;int main(){ char word[100]; scanf("%s",word); int len=strlen(word); for(int i=1;i<=len;i++) i
2013-09-25 14:47:00 603
原创 并查集
首先用一个最简单的题引入并查集/*并查集初步输入n,m,p<=5000,分别表示n个人,m个亲戚关系,询问pi对pj是否有亲戚关系,有则yes,否则no*/#includeusing namespace std;int father[5002],a,b,m,n,p,i;int find(int x){ if(father[x]!=x) father[x
2013-09-25 14:43:18 510
原创 最大字段和小结 DP
poj2479 模板题,即求两个段的最大子段和//poj2479/*dp[i][j]表示包含第i个数的前i个数划分为j个子段和的最大值●dp[i][j] = Max{dp[i-1][j]+a[i],Max{dp[k][j-1]+a[i]} (j-1<=k<i)} 1<=j<=mj<=i<=n●dp[i-1][j]+a[i]表示第j个子段包含a[i]●Max{dp[k][j-1]
2013-09-24 00:16:17 573
原创 最大子段和问题小结
//poj2479/*dp[i][j]表示包含第i个数的前i个数划分为j个子段和的最大值●dp[i][j] = Max{dp[i-1][j]+a[i],Max{dp[k][j-1]+a[i]} (j-1<=k<i)} 1<=j<=mj<=i<=n●dp[i-1][j]+a[i]表示第j个子段包含a[i]●Max{dp[k][j-1]+a[i]}表示第j个子段只有a[i]f[i][j
2013-09-24 00:10:56 567
原创 水题四道
//toj2782--简单的字符串比较- -#include#include#includeusing namespace std;int main(){ int cases,i; char a[55],b[55]; cin>>cases; while(cases--) { cin>>a>>b; int len1=
2013-09-23 16:51:39 471
原创 优先队列小结
据说要考了···好紧脏//toj3488--优先队列 /*priority_queue其中Type 为数据类型, Container 为保存数据的容器,Functional 为元素比较方式。Container 必须是用数组实现的容器,比如 vector, deque 但不能用 list.STL里面默认用的是 vector. 比较方式默认用 operator< , 所以如果你把后面
2013-09-23 16:46:13 530
原创 LCS 经典题及变式的小结【动态规划】
LCS 是最大公共子串的意思。首先来一道最简单的LCS题,即求两个字符串的LCS长度//toj1683 LCS 最长公共子序列 #include #include using namespace std;char s1[500],s2[500];int res[500][500];int main(){ while(cin>>s1>>s2) { memset(res,
2013-09-22 01:21:17 655
原创 dijkstra算法典型题
//toj1778--dijkstra加上dp#include#include#define INF 0xfffffff#define MAX 105using namespace std;int flag[MAX],map[MAX][MAX],dist[MAX],dp[MAX];int i,j,n;void dijkstra(int s){ memset(flag,0,s
2013-09-21 19:57:11 927
原创 贪心&动态规划
//toj1731--四柱汉诺塔问题,动态规划#include#define MAX 999999using namespace std;int dp[15],i,j;int min(int a,int b){ return a<b?a:b; }int hanoi(int x){ int sum=1; for(int i=1;i<=x;i++)
2013-09-21 19:55:04 421
原创 一些数字转换题、数论,还有高精度的题
/*toj 2193巴什博弈:只有一堆n个物品,两个人轮流从这对物品中取物,规定每次至少取一个,最多取m个,最后取光着得胜。 很容易想到当n%(m+1)!=0时,先取者必胜, 第一次先拿走n%(m+1)个, 以后每个回合都保持两人拿走的物品总和为m+1即可。 这个游戏还可以有一种变相的玩法:两个人轮流报数, 每次至少报一个,最多报10个,谁能报到100者胜。*/ #include
2013-09-21 19:51:19 497
原创 近日一些水题
中秋在家堕落了···今天贴的都是中秋之前的题,先来水题//toj2917#include#include#includeusing namespace std;int main(){ double n; while(cin>>n) { if(n<0)break; cout<<fixed<<setprecision(2);
2013-09-21 19:46:53 762 2
转载 TOJ题目分类demo
发信人: RoBa (rerestart) TOJ题目分类+简析 (Demo版) 赞美ROBA2006/12/30zz ..from bbs发信人: RoBa (rerestart), 信区: ACM 标 题: TOJ题目分类+简析 (Demo版) 发信站: 天大求实BBS (Sat Dec 30 11:32:08 2006), 本站(bbs.tju.edu.cn)
2013-09-16 01:16:53 1295
原创 不太掌握的题和木有ac的题··
toj2479 看人家的代码看懂了··不过感觉没有掌握,照着写了下//toj2479#include#include#includeusing namespace std;bool Judge(int p,int q,int r,int s,int t,string st){ stack s_num; int buff_1,buff_2; string::size_typ
2013-09-16 01:06:40 668
原创 今日水题&数学题
toj3254石头剪子布问题,直接暴力模拟,因为数比较小//toj3254#include#includeusing namespace std;char my[51],others[51][51];int i,j;int cmp(char x,char y){ if(x=='R') { if(y=='R')return 1;
2013-09-16 00:53:33 709
原创 toj2033 floyd算法 模板
//toj2033 floyd#include#define MAX 21using namespace std;int i,j;int main(){ int t=1,m,n,i,j,k; int map[MAX][MAX]; while(cin>>n) { for(i=1;i<=20;i++) for(j=1;j
2013-09-15 15:55:05 653
原创 toj1142 prim算法典型题
稍微有一点点变式//toj1142#include#include#include#include#define MAX 5001using namespace std;int visit[205],i,j,n;double dist[205],map[205][205];struct node{ double x,y; };node a[205];
2013-09-15 15:52:08 638
原创 toj3073 Country road prim算法 典型题
要进行一些初始化的处理~//toj3073 Country road prime算法 典型题#include#include#define MAX 200000using namespace std;int map[1005][1005];int visit[1005];int dist[1005],i,j,k,m,n;int prime(){ int sum,m
2013-09-15 15:50:38 637
原创 toj2825 catch the cow BFS典型题
//toj2825 catch the cow BFS typical#include#define MAX 999999using namespace std;int n,k;int x[MAX],step[MAX],flag[MAX]={0};int bfs(int a,int b){ int top,tx,i; top=1; step[0]=0;
2013-09-15 15:47:47 650
原创 toj3071 BFS_模板
//toj3071number game BFS--典型bfs,分别有加一减一和乘除的操作,因此用bfs先操作一下,如果成功进入队列,最终找到最小的步骤#include#include#include#define MAX 100000using namespace std;int main(){ int cases,k,p,flag[MAX+1],i; int
2013-09-15 15:46:55 551
原创 toj2892Task 拓扑排序——模板
抛弃了百度空间,以后acm的题都往这里发了toj2892——任务先后顺序问题,看是否一个有向图中有环//toj2892#include#includeusing namespace std;int i,j,k,x,y,m,n,into[101];bool topology(int a[][50]){ memset(into,0,sizeof(into));
2013-09-15 15:44:03 541
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人