01 2014 档案
sort排序
摘要:#include void sort( iterator start, iterator end ); void sort( iterator start, iterator end, StrictWeakOrdering cmp );第一个只需要传递你要排序的串(整形数组等都行)的头指针(数组第一个元素的指针)与数组最后元素的下一个位置,sort是一个模板哈第二个前面两个参数同第一,但第三个参数是传递一个你定义用于排序的函数(返回比较的大小值,如strcmp或自定义的都行),因为第一个用的是默认的哈sort与stable_sort这两个函数的原理都是快速排序,时间复杂度在所有排序中最低,为. 阅读全文
posted @ 2014-01-15 18:11 yun_ 阅读(961) 评论(0) 推荐(0)
递归算法
摘要:摘要:递归算法,结构清晰,形式简单,符合人的思维习惯,容易被理解和阅读,因而成为计算机程序设计中的一种重要方法,掌握它也有助于理解其他算法。该文阐述了递归算法的基本概念,成立的三个条件,直接和间接递归分类,通过实例深入分析递归在数据结构、函数应用和执行过程中的应用,以及将递归转化为非递归的一般方法。中国论文网http://www.xzbu.com/8/view-3705319.htm 关键词:递归;算法;消除;程序;应用 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)30-7229-06 1 递归概念 1.1 概述 本文阐述了递归算法的基本定义、成... 阅读全文
posted @ 2014-01-14 18:20 yun_ 阅读(9876) 评论(0) 推荐(0)
最少步数----深搜
摘要:最少步数时间限制:3000ms | 内存限制:65535KB难度:4描述这有一个迷宫,有0~8行和0~8列:1,1,1,1,1,1,1,1,11,0,0,1,0,0,1,0,11,0,0,1,1,0,0,0,11,0,1,0,1,1,0,1,11,0,0,0,0,1,0,0,11,1,0,1,0,1,0,0,11,1,0,1,0,1,0,0,11,1,0,1,0,0,0,0,11,1,1,1,1,1,1,1,10表示道路,1表示墙。现在输入一个道路的坐标作为起点,再如输入一个道路的坐标作为终点,问最少走几步才能从起点到达终点?(注:一步是指从一坐标点走到其上下左右相邻坐标点,如:从(3,1)到 阅读全文
posted @ 2014-01-13 09:09 yun_ 阅读(424) 评论(0) 推荐(0)
水池数目---深搜思想
摘要:1 //水池个数 深搜思想 2 /*#include 3 int a[105][105],m,n; 4 void DFS(int x,int y) 5 { 6 if(x=m||y=n)//到达边界 7 return; 8 if(a[x][y]!=0)//跳出 9 {10 a[x][y]=0;//搜完之后 此节点置011 DFS(x+1,y);//递归调用 往下搜12 DFS(x,y+1);//右13 DFS(x-1,y);//上14 DFS(x,y-1);//左15 }16... 阅读全文
posted @ 2014-01-13 09:02 yun_ 阅读(503) 评论(0) 推荐(0)
大数阶乘问题--模拟手算过程
摘要:1 //大数阶乘问题 模拟手算的过程 用数组存储每一位数 有进位s 2 #include 3 int main() 4 { 5 6 int m,i,j; 7 while(~scanf("%d",&m)) 8 { 9 int f[20000]={0};//初始化为010 f[0]=1;11 for( i=1;i=0;i--)22 if(f[i]!=0)//删除前导023 break;24 //printf("i=%d\n",i);25 ... 阅读全文
posted @ 2014-01-13 08:57 yun_ 阅读(274) 评论(0) 推荐(0)
括号匹配--nyoj 2
摘要:括号配对问题时间限制:3000ms | 内存限制:65535KB难度:3描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0 2 #include 3 int main() 4 { 5 int k,top; 6 int N,i,l; 7 char s1[10005],s2[10005]; 8 scanf("%d",&N); 9 getchar();10 while(N--)11 {12 gets(s1);13 l=strlen(s1);14 if(l%2==1)15... 阅读全文
posted @ 2014-01-12 17:09 yun_ 阅读(235) 评论(0) 推荐(0)
快速查找素数--nyoj187
摘要:题目187快速查找素数时间限制:1000ms | 内存限制:65535KB难度:3描述现在给你一个正整数N,要你快速的找出在2.....N这些数里面所有的素数。输入给出一个正整数数N(N 3 #include 4 int a[2000001]; 5 int main() 6 { 7 int i,j,n; 8 for(i=2;i<=2000000;i++)/*筛选法求素数*/ 9 {10 if(a[i]==0)11 for(j=i+i;j<=2000000;j+=i)//素数的倍数不是素数12 a[j]=1;//标记13 }14 while... 阅读全文
posted @ 2014-01-10 14:04 yun_ 阅读(175) 评论(0) 推荐(0)
蛇形填数(二)--nyoj852
摘要:题目852蛇形填数(二)时间限制:2000ms | 内存限制:65535KB难度:3描述1 2 3 4 512 13 14 611 15 710 89跟蛇形填数一样,只是填数要求按照三角形填。注意每组数据之间用空行隔开输入第一行有一个N,表示N组测试数据接下来每组数据包括一个数字X,表示三角形的边长,0 3 int main() 4 { 5 int a,b,c,d,n,aa,T; 6 int yi[1001][1001]; 7 scanf("%d",&T); 8 while(T--) 9 {10 int sum=1;11 ... 阅读全文
posted @ 2014-01-10 13:55 yun_ 阅读(279) 评论(0) 推荐(0)
孪生素数问题--nyoj26
摘要:孪生素数问题时间限制:3000ms | 内存限制:65535KB难度:3描述写一个程序,找出给出素数范围内的所有孪生素数的组数。一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数。有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数。输入第一行给出N(0 3 #include 4 #define N 1000005 5 int prime[N]; 6 int main() 7 { 8 int i, j,flag,T,M; 9 for(i=2; i2) prime[i]=0;11 el... 阅读全文
posted @ 2014-01-10 13:50 yun_ 阅读(1379) 评论(0) 推荐(0)
集训又开始了 满怀希望的旅程
该文被密码保护。
posted @ 2014-01-10 13:36 yun_ 阅读(1) 评论(0) 推荐(0)