自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

.

  • 博客(39)
  • 问答 (1)
  • 收藏
  • 关注

原创 poj 2417 小步大步算法+费马小定理求逆元

/*小步大步算法+费马小定理求逆元如果p为素数,a为整数,则a^(p-1)=1(mod p) -> a^(p-2)=(a^(-1))(mod p)Baby-Steps-Giant-Steps算法 高次同余方程。 A^x== B (mod C)这里用到baby_step,giant_step算法。意为先小步,后大步。令x=i*m+j (m=ceil(sqrt(p))),那么原式化

2017-04-30 17:48:16 35434

原创 poj2478 (欧拉函数)

Farey SequenceTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 16261 Accepted: 6460DescriptionThe Farey Sequence Fn for any integer n with n >= 2 is the

2017-04-29 10:29:50 102412

原创 poj3090(欧拉函数)

Visible Lattice PointsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 7227 Accepted: 4371DescriptionA lattice point (x, y) in the first quadrant (x an

2017-04-29 09:51:01 37340

原创 关于欧拉筛法和普通筛法

prime[]数组中的素数是递增的,当i能整除prime[j],那么i*prime[j+1]这个合数肯定被prime[j]乘以某个数筛掉。 因为i中含有prime[j],prime[j]比prime[j+1]小,即i=k*prime[j],那么i*prime[j+1]=(k*prime[j])*prime[j+1]=k’*prime[j],接下去的素数同理。所以不用筛下去了。因此,在满足i%

2017-04-29 09:02:04 85600 1

原创 斐波那契数列的通项公式

2017-04-29 08:08:05 30511

原创 poj1845 A^B 的因子和 (逆元)

SumdivTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 21310 Accepted: 5360DescriptionConsider two natural numbers A and B. Let S be the sum of all natur

2017-04-26 21:20:59 33364

原创 poj3292 (H数)筛法

/*问题描述 形如4n+1的数被称为“H数”,乘法在“H数”组成的集合内是封闭的。在这个集合中只能被1和本身整除的数叫做“H-素数”(不包括1,H-素数并不是真正的素数,而是在H数集合中是素数),其余的数被称为“H-合数”。一个“H-合成数”是一个能且只能分解成两个“H-素数”乘积的“H-合数”(可能有多种分解方案)。比如441=21*21=9*49,所以441是“H-合成数”。125=

2017-04-25 18:10:42 94565

原创 hdu2767 等价性证明(求强连通分量缩点后的出度和入度为0的个数)

Proving EquivalencesTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6792    Accepted Submission(s): 2360Problem DescriptionConsi

2017-04-25 13:46:49 27566

原创 POJ2186 Popular Cows 【强连通分量】+【Kosaraju】+【Tarjan】

/*Popular Cows ( POJ No.2186)每头牛都想成为牛群中的红人。给定 N 头牛的牛群和 M 个有序对(A, B)。 (A, B)表示牛 A 认为牛 B 是红人。该关系具有传递性,所以如果牛 A 认为牛 B 是红人,牛 B 认为牛 C 是红人,那么牛 A 也认为牛 C 是红人。不过,给定的有序对中可能包含(A, B)和(B, C),但不包含(A, C)。求被其他所有牛

2017-04-23 22:10:03 49370

原创 poj 1852 Ants 发现问题,解决问题

Time Limit: 1000MS Memory Limit: 30000KTotal Submissions: 17694 Accepted: 7520DescriptionAn army of ants walk on a horizontal pole of length l cm, each with a constant spee

2017-04-23 12:28:51 51650

原创 算法训练 表达式计算

问题描述  输入一个只包含加减乖除和括号的合法表达式,求表达式的值。其中除表示整除。输入格式  输入一行,包含一个表达式。输出格式  输出这个表达式的值。样例输入1-2+3*(4-5)样例输出-4数据规模和约定  表达式长度不超过100,表达式运算合法且运算过程都在int内进行。//把中缀表达式转换成后缀表达式,然后从左到右扫描一遍即可,//扫

2017-04-22 13:31:14 31537

原创 中缀表达式转换为后缀表达式

一、后缀表达式求值后缀表达式也叫逆波兰表达式,其求值过程可以用到栈来辅助存储。假定待求值的后缀表达式为:6 5 2 3 + 8 * + 3 + *,则其求值过程如下:1)遍历表达式,遇到的数字首先放入栈中,此时栈如下所示:2)接着读到“+”,则弹出3和2,执行3+2,计算结果等于5,并将5压入到栈中。3)读到8,将其直接放入栈中。

2017-04-22 11:50:10 56588 1

原创 UVALive - 3635 派(二分)

给n个面积的蛋糕,要求每个人最后只拿一个等面积的圆蛋糕,问最后每个人能拿到的最大的面积是多少?所有蛋糕都是完整的圆以及  每个人拥有圆形蛋糕的 面积与他人一样 #include#include#includeusing namespace std;const int maxn=10000+10;const double PI=acos(-1);//注意包含头文件cmath

2017-04-21 21:57:54 24275

原创 UVALive - 3971 组装电脑(最大值极小化)

题意:有一定的钱,有一些“电脑配件”,要求在钱数内每种配件用一次,组装出性能最高的电脑,电脑的性能为所有配件中质量最小的。求出性能。//最小值最大问题 #include#include#include#include#includeusing namespace std;const int maxn=1000+5;int n,b,maxq;int cnt;//记录种类 st

2017-04-21 20:49:30 30035

原创 UVA - 11384 正整数序列(发现规律)

题意:有一个1到n的序列,你一次从这个序列中取出几个数字,把他们减去同一个数,问最少做几次,全部变成0;/*如果每次我们给后面一般的数减去个n/2则问题就化简成了n/2的问题例如 n=6时 将4,5,6,同时减去个3 则数据就变成了{1,2,3,1,2,3}此问题等价于n=3时的问题这题真的很有启发性 */#include#includeusing namespace std

2017-04-20 20:32:25 24648

原创 UVA - 11464 偶数矩阵(模拟,枚举)

现在有一个n*n的01矩阵(也就是说里面的每个数要么是1,要么是0),你的任务是通过把一些0变成1,使得每个元素的上下左右的元素(如果存在的话)之和均为偶数。例如,下面的4*4的矩阵:左边是原始的矩阵,右边矩阵里的每一个数表示其在原始矩阵中相邻上下左右四个数之和。  1010The parity of each cell woul

2017-04-20 20:18:54 25431

原创 uva11300分金币 随机选择算法

题意:n个人围成一圈,每个人都有一些硬币,,每个人只能给左右相邻的人硬币,问最少交换几个硬币,使每个人硬币一样多;//没用随机选择算法也可以过//本题其实就是求各个点到中位数的和/*Accepted 16 sec ago 随机选择算法,时间复杂度n Accepted 1 min ago 排序,时间复杂度n*logn */#include#include#include#i

2017-04-19 23:03:23 27126

原创 UVA-10881 蚂蚁 Piotr's Ants

题目大意:一根长L厘米的木棍上有n只蚂蚁,每只蚂蚁有个开始的位置和爬行方向,速度为1.当两只蚂蚁相撞后,两者同时掉头继续爬行,求按输入顺序给出每只蚂蚁T秒后的位置后朝向。/*蚂蚁相遇时可以理解为“对穿而过"关键是找到移动后,对应位置的蚂蚁是最初的哪只蚂蚁,于是发现蚂蚁移动后的相对顺序是不变的,于是用order数组哈希定位order[i]数组:最初顺序为i的位置,这个打表用得好感觉用两个

2017-04-19 22:32:16 25801

原创 LA3708 墓地雕塑

题意:      有N个墓碑,等距离的分布在一个圆形墓地的周围,然后又要添加m个墓碑,最后要求所有的墓碑还是等距离,添加的墓碑可以放在任意位置,问之前的N个墓碑的最少移动距离之和是多少?//要发现有一个点不要动 #include#include#includeusing namespace std;int main(int argc,char* argv[]){ int n

2017-04-19 20:52:23 24475 1

原创 uva 11729 水题

题意:n个任务,需要交代B分钟,执行J分钟,让你合理选择交代任务的次序,求得n个任务完成的最小总时长#include#include#includeusing namespace std;const int mx=10009;int n;struct node{ int b,j; bool operator<(node t)const{ return j>t.j;

2017-04-18 18:19:14 29255

原创 UVA 11292 勇者斗恶龙,排序

勇者斗恶龙(The Dragon of Loowater, UVa 11292)你的王国里有一条n个头的恶龙,你希望雇一些骑士把它杀死(即砍掉所有头)。村里有m个骑士可以雇佣,一个能力值为x的骑士可以砍掉恶龙一个直径不超过x的头,且需要支付x个金币。如何雇佣骑士才能砍掉恶龙的所有头,且需要支付的金币最少?注意,一个骑士只能砍一个头(且不能被雇佣两次)。【输入格式】输入包含多

2017-04-18 13:00:08 22278

原创 codevs 1281 Xn数列 快速幂+快速加防溢出

题目描述 Description给你6个数,m, a, c, x0, n, gXn+1 = ( aXn + c ) mod m,求Xnm, a, c, x0, n, g输入描述 Input Description一行六个数 m, a, c, x0, n, g输出描述 Output Description输出一个数 Xn m

2017-04-15 22:55:33 22461

原创 codevs3147 矩阵乘法 2 (推导小公式)

题目描述 Description给出两个n*n的矩阵,m次询问它们的积中给定子矩阵的数值和。*为防止卡评测,已减小数据范围并调低时限。输入描述 Input Description第一行两个正整数n,m。接下来n行,每行n个非负整数,表示第一个矩阵。接下来n行,每行n个非负整数,表示第二个矩阵。接下来m行,每行四个正整数a,b,c,d,表示询问第一

2017-04-14 17:57:46 21155

原创 2017第八届蓝桥杯C/C++ B组省赛

第二题标题:等差素数列2,3,5,7,11,13,....是素数序列。类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。上边的数列公差为30,长度为6。2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。这是数论领域一项惊人的成果!有这一理论为基础,请你借助手中的计算机,满怀信心地搜

2017-04-14 13:01:44 33740

原创 历届试题 约数倍数选卡片 博弈论?dfs

问题描述  闲暇时,福尔摩斯和华生玩一个游戏:  在N张卡片上写有N个整数。两人轮流拿走一张卡片。要求下一个人拿的数字一定是前一个人拿的数字的约数或倍数。例如,某次福尔摩斯拿走的卡片上写着数字“6”,则接下来华生可以拿的数字包括:  1,2,3, 6,12,18,24 ....  当轮到某一方拿卡片时,没有满足要求的卡片可选,则该方为输方。  请你利用计算机的优势计算一下,

2017-04-06 22:47:36 19290

原创 hdu1269 迷宫城堡 tarjan求强联通分量

Problem Description为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N Input输入包含多组数据,输入的第一行有两个数:N和M,接下来的M行每行有两个数a和b,表示了一条通道可以从A房间来到B房间。文件最后以两个0结束。 Output对于输入的每组数据,如果任意两个房间都是相互连接的,输

2017-04-06 20:56:48 17861

原创 codevs1116 四色问题 dfs

题目描述 Description给定N(小于等于8)个点的地图,以及地图上各点的相邻关系,请输出用4种颜色将地图涂色的所有方案数(要求相邻两点不能涂成相同的颜色)数据中0代表不相邻,1代表相邻输入描述 Input Description第一行一个整数n,代表地图上有n个点接下来n行,每行n个整数,每个整数是0或者1。第i行第j列的值代表了第i个点和第j个

2017-04-05 09:10:47 13382

原创 code1018 单词接龙 dfs,字符串处理

题目描述 Description    单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如beast和astonish,如果接成一条龙则变为beastonish,另外相邻的两部分不能存在包含关系,例如at和atide间不能相连。

2017-04-04 21:47:36 15466

原创 2016年第七届蓝桥杯C/C++程序设计本科B组省赛 剪邮票(结果填空)

剪邮票如【图1.jpg】, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。请你计算,一共有多少种不同的剪取方法。//枚举5个点,然后dfs判断联通性 #include#include#includeusing

2017-04-04 16:57:36 21513

原创 历届试题 城市建设 最小生成树kuskal

问题描述  栋栋居住在一个繁华的C市中,然而,这个城市的道路大都年久失修。市长准备重新修一些路以方便市民,于是找到了栋栋,希望栋栋能帮助他。  C市中有n个比较重要的地点,市长希望这些地点重点被考虑。现在可以修一些道路来连接其中的一些地点,每条道路可以连接其中的两个地点。另外由于C市有一条河从中穿过,也可以在其中的一些地点建设码头,所有建了码头的地点可以通过河道连接。  栋

2017-04-04 10:44:42 12546

原创 01背包中是否背包装满问题

背包:有n 种不同的物品,每个物品有两个属性,v体积,c价值,现在给一个体积为 m 的背包,问最多可带走多少价值的物品。状态转移方程dp[i][j]=max(dp[i-1][j],dp[i-1][j-v[i]]+c[i])dp[i-1][j]表示不放第i件物品的最大价值,dp[i-1][j-v[i]]+c[i]表示放第i件物品的最大价值;[i-1][j-v[i]]这个表

2017-04-03 19:15:58 9765

原创 codevs2488 绿豆蛙的归宿 dfs

题目描述 Description  随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。  给出一个有向无环图,起点为1终点为N,每条边都有一个长度,并且从起点出发能够到达所有的点,所有的点也都能够到达终点。绿豆蛙从起点出发,走向终点。  到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。

2017-04-03 16:45:25 8977

原创 codevs2833 2833 奇怪的梦境(拓扑排序)

题目描述 DescriptionAiden陷入了一个奇怪的梦境:他被困在一个小房子中,墙上有很多按钮,还有一个屏幕,上面显示了一些信息。屏幕上说,要将所有按钮都按下才能出去,而又给出了一些信息,说明了某个按钮只能在另一个按钮按下之后才能按下,而没有被提及的按钮则可以在任何时候按下。可是Aiden发现屏幕上所给信息似乎有矛盾,请你来帮忙判断。输入描述 Input Desc

2017-04-03 16:24:21 7243

原创 Vijos1790 拓扑编号 拓扑排序

题目链接描述H国有n个城市,城市与城市之间有m条单向道路,满足任何城市不能通过某条路径回到自己。现在国王想给城市重新编号,令第i个城市的新的编号为a[i],满足所有城市的新的编号都互不相同,并且编号为[1,n]之间的整数。国王认为一个编号方案是优美的当且仅当对于任意的两个城市i,j,如果i能够到达j,那么a[i]应当优美的编号方案有很多种,国王希望使1号城市的编号尽

2017-04-03 16:07:09 9782

原创 历届试题 大臣的旅费 dfs

问题描述很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。J是T国重要大臣,他巡查于各大城市之间,体察民情。所以,从一个城市马不停蹄地

2017-04-02 22:53:23 5089

原创 历届试题 网络寻路 dfs

问题描述X 国的一个网络使用若干条线路连接若干个节点。节点间的通信是双向的。某重要数据包,为了安全起见,必须恰好被转发两次到达目的地。该包可能在任意一个节点产生,我们需要知道该网络中一共有多少种不同的转发路径。源地址和目标地址可以相同,但中间节点必须不同。如下图所示的网络。1 -> 2 -> 3 -> 1 是允许的1 -> 2 -> 1 -> 2

2017-04-02 16:10:46 2139

原创 历届试题 幸运数 暴力模拟

问题描述幸运数是波兰数学家乌拉姆命名的。它采用与生成素数类似的“筛法”生成。首先从1开始写出自然数1,2,3,4,5,6,....1 就是第一个幸运数。我们从2这个数开始。把所有序号能被2整除的项删除,变为:1 _ 3 _ 5 _ 7 _ 9 ....把它们缩紧,重新记序,为:1 3 5 7 9 .... 。这时,3为第2个幸运数,然

2017-04-02 14:18:36 4120

原创 poj1258 Agri-Net 最小生成树 prim kruskal 模板

Agri-NetTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 56702 Accepted: 23513DescriptionFarmer John has been elected mayor of his town! One of his campa

2017-04-02 12:49:20 4536

原创 最小生成树 kruskal

克鲁斯卡尔(Kruskal)算法(只与边相关)算法描述:克鲁斯卡尔算法需要对图的边进行访问,所以克鲁斯卡尔算法的时间复杂度只和边又关系,可以证明其时间复杂度为O(eloge)。算法过程:1.将图各边按照权值进行排序2.将图遍历一次,找出权值最小的边,(条件:此次找出的边不能和已加入最小生成树集合的边构成环),若符合条件,则加入最小生成树的集合中。不符合条

2017-04-02 10:05:31 2706

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除