HDU 1026 Ignatius and the Princess I (基本算法-BFS)
题目大意:
给定1张图,走到“.”需要1步,走到数字除了需要1步,还要停留数字上那么多步,“#”不能走,问你从左上角到右下至少走多少步,并输出路径
解题思路:
简单的BFS,再加上记录前1步可以从终点往前来获得路径。...
分类:
其他好文 时间:
2014-07-29 22:01:23
阅读次数:
368
欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。
基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,b)=gcd(b,a%b)。
递归代码:
__int64 gcd(__int64 a,__int64 b)
{
return b==0?a:gcd(b,a%b);
}
扩展欧几里得
基本...
分类:
其他好文 时间:
2014-07-29 15:00:38
阅读次数:
431
掌握了容斥原理后,便会发现,这是一道简单的容斥原理的题。
题目描述:给定A, B, N (1 <= A <= B <= 10^15,1<=N <= 10^9).求[A,B]区间内与N互素的数的个数
看到这道题,自然联想到跟素数相关的知识,所以在做这道题之前,我忍不住整理一下关于素数的基本算法。
1、素数筛选法(求1~n的素数):http://blog.csdn.net/yzj577/article/details/38147433
2、验证素数:http://blog.c...
分类:
其他好文 时间:
2014-07-27 11:27:22
阅读次数:
291
一种节省空间的交换变量的基本算法,一个很简单的算法
因为其中没有引入temp变量,所以可以节省空间
代码如下:
{CSDN:CODE:435472}...
分类:
其他好文 时间:
2014-07-26 02:00:36
阅读次数:
222
欧几里得
欧几里德算法
欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。
基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,b)=gcd(b,a%b)。
第一种证明:
a可以表示成a = kb + r,则r = a mod b
假设d是a,b的一个公约数,则有
d|a, d|b,而r = ...
分类:
其他好文 时间:
2014-07-22 23:52:47
阅读次数:
344
一、基本算法2.二分查找void find(int l,int r){ if (l>r || a[l]>x || a[r]> 1; if (a[mid] == x){ if (mid a[mid]) find(mid+1, r); else find(l, mid-...
分类:
其他好文 时间:
2014-07-21 09:15:15
阅读次数:
227
基本算法 这些都是非常基本的的算法,希望所有学习的人都能理解! 1.数论算法 求两数的最大公约数 function gcd(a,b:integer):integer; begin if b=0 then gcd:=a else gcd:=gcd (b,a mod b); end ; 求两数的最小公倍...
分类:
其他好文 时间:
2014-07-16 19:35:42
阅读次数:
665
搜索一个图是有序地沿着图的边访问所有定点, 图的搜索算法可以使我们发现很多图的结构信息, 图的搜索技术是图算法邻域的核心。
e...
分类:
其他好文 时间:
2014-07-09 10:30:48
阅读次数:
233
去华为面试的时候,没有做好准备工作;面试的流程没有问清也没有查,结果一过去就让上机做题,着实有点措手不及,基本的编程知识早已生疏了。笔者是擅长前端的Java Web工程师啊,机试题碰到了这道位运算的题目,按理说是非常简单的,但是由于实在是好多年没有搞过位运算了,Java位运算更是没有操作过,所以结果实在是不体面……...
分类:
Web程序 时间:
2014-06-30 17:07:44
阅读次数:
197