算法
保持热爱,不忘初心
当你的才华还撑不起你的野心时,就该静下心来好好学习。
展开
-
C语言用数组解决约瑟夫环问题...
描述: 在罗马人占领乔塔帕特后,39 个犹太人与约瑟夫及他的朋友躲到一个洞中,大家决定宁愿自杀也不要被敌人抓到,于是确定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而约瑟夫和他的朋友并不想死去,那么他应该怎样安排他和他的朋友的位置,才能逃脱这场死亡游戏呢? 用C语言解决约瑟夫环问题的最佳方式是...转载 2019-01-26 19:45:51 · 1466 阅读 · 0 评论 -
计算实数的整数幂-----算法
求解x的整数幂,最简单的方法是对x用迭代自乘n次:for(int i=1,fact=1;i<=n;i++)fact=fact*x;现在用一个更高效的算法,用递归的思想分析如下。假设已经知道如何求x的n/2,令m=n/2,如果n为偶数,那么x的n次方=(x的m次方)的平方;否则,为(x的m次方)的平方再乘x。//用分治法计算实数的整数幂#include<stdio.h>d...原创 2019-01-27 11:03:00 · 1033 阅读 · 0 评论 -
1004 n^n的末尾数字 51nod
给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。输入一个数N(1 <= N <= 10^9)输出输出N^N的末位数字输入样例13输出样例3#include<stdio.h>int pow_mod(int x,int n,int mode){ int res=1; while(n) { if(n%2==1) { res...原创 2019-01-27 12:04:13 · 113 阅读 · 0 评论 -
算法——随机化算法~计算圆周率的近似值
题目:下面介绍一个用随机投点法计算圆周率的近似值的算法,利用圆与其外切正方形的面积之比来计算π的近似值。题解思路:半径为1的圆的1/4是一个扇形,是边长为1的正方形的一部分。k=πrr/4/rr=π/4;可得π=4k。这里用随机投点法来计算K的近似值,从而得到π的近似值。在正方形中投掷n个点,每个点落在正方形中每个位置的机会均等,然后记录有多少点落在正方形内,其中落在扇形内的点的个数m与总数...原创 2019-02-15 14:01:20 · 4974 阅读 · 1 评论 -
hdu 2111 Saving HDU
题目描述:话说上回讲到海东集团面临内外交困,公司的元老也只剩下XHD夫妇二人了。显然,作为多年拼搏的商人,XHD不会坐以待毙的。一天,当他正在苦思冥想解困良策的时候,突然想到了自己的传家宝,那是公司成立的时候,父亲作为贺礼送来的一个锦囊,徐父当时交代,不到万不得已的时候,不要打开它。“现在不正是最需要的时候吗?”,一边想,XHD一边找到了这个精心保管的锦囊,打开一看,里面只有一句话“杭城北麓千...原创 2019-02-08 21:28:23 · 125 阅读 · 0 评论 -
hdu 1789 Doing Homework again
题目描述:Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Every teacher gives him a deadline of handing in the homework. If Ignatius hands in the homework af...原创 2019-02-08 22:59:31 · 235 阅读 · 0 评论 -
51 nod 1094 和为k的连续区间
题目一整数数列a1, a2, … , an(有正有负),以及另一个整数k,求一个区间[i, j],(1 <= i <= j <= n),使得a[i] + … + a[j] = k。输入第1行:2个数N,K。N为数列的长度。K为需要求的和。(2 <= N <= 10000,-10^9 <= K <= 10^9)第2 - N + 1行:A[i](-10...原创 2019-02-21 18:25:28 · 154 阅读 · 0 评论