- 博客(53)
- 收藏
- 关注
原创 迷宫问题
问题描述:在n*m的迷宫中解救人质,人质在(p,q)处,你现在在(x,y)处,中间你会碰到墙,需要绕道走,求最快解救人质需要走的步数(墙表示为1)。方案一:DFS//迷宫问题 (x,y)——>(p,q) dfs#include #include using namespace std;#define N 11int vis[N][N],a[N][N];int vir[4][2]
2017-03-31 17:52:19
391
原创 不一样的S型方阵
纯模拟,从(1,n)位置开始模拟,到达行边界考虑右下方是否有值,没有就右下走,有就往左走,到达列边界考虑左上方是否有值,没有就往左上方走,有就往下走#include #include using namespace std;#define MAX 31int n;int a[MAX][MAX];void Init();void Order();void vOut();
2017-01-08 20:57:43
1323
原创 多项式相乘问题(模拟)
题意:给你个N,表示有N项,然后给出每一项的X的幂以及系数,求两个一元多次多项式相乘的结果,输出项数以及按高次分别输出幂和系数#include #include #include #define MAX 2002#define MAXN 101#define EPS 0.05int n,nk;double nA[MAX],nB[MAX],nC[MAX];double Dout[
2017-01-08 20:17:03
1641
原创 系数求和问题(模拟)
纯模拟!用数组存下来,地址为幂,值为系数。#include #include #include #define MAX 1001 #define MAXN 21 #define EPS 0.05 int n,nk; double nA[MAX],nB[MAX],nC[MAX]; double Dout[MAXN]; int Mout[MAXN]; void Init
2017-01-07 17:15:26
721
原创 大数幂运算
还是纯模拟,只可意会,不可言传,回到4年级,然后自己体会#include #include using namespace std;#define MAX 40001int s[MAX];int nbit;void Init();void EXP(int nb,int ne);void vout(int x);int main(){ int base,exp;
2017-01-07 16:31:27
1270
原创 大数求和问题(C++版本)
大数求和其实是个纯模拟,我们小学2年级老师就我们通过列竖式求加法,从个位开始加,进位+1,唯一需要值得注意的是我们求出来的结果要为有效值,即00001=1,0000=0#include #include using namespace std;string nAB(string A,string B);string vCout(string A);void vout(stri
2017-01-07 16:08:24
957
转载 string类字符串方法
转自:http://www.cnblogs.com/mr-wid/archive/2013/01/21/2870575.html一、string类字符串的介绍 在程序设计中, 字符串的使用十分频繁, C语言类型字符串(简称C-串)在使用与字符串的处理上较为复杂, C++为了在程序设计中更加方便的使用字符串特新增了一种string类型的字符串。 string类字符串为STL(St
2017-01-07 15:37:03
687
转载 常用字符串操作函数
转自:http://blog.sina.com.cn/s/blog_586b6c050100e0kv.html函数名: stpcpy功 能: 拷贝一个字符串到另一个用 法: char *stpcpy(char *destin, char *source);程序例:#include #include int main(void){ char s
2017-01-07 15:12:04
286
原创 基站建设问题
一起来看看这题,题意:在二维坐标中,有n个点,要求在x轴上某点为圆心,d为半径,能覆盖这些点,求需要这样的几个圆。如果无法完全覆盖输出-1思路: 我们可以逆向思考,如果以二维坐标上的点P(x,y)为圆心,d为半径,则有两个点经过x轴,那两个点即为x轴上能覆盖到P的最近点和最远点,如图在Xmin和Xmax之间的任意x为圆心肯定都能覆盖到P点。那问题就转换成了任意Pi的
2017-01-06 22:51:55
1788
原创 欧拉函数问题
对于这题,做过好久了,但是重新翻出来的时候,脑袋又一脸懵逼了,看不懂自己的代码,自己默默的琢磨了一个晚上,还问了朋友。题意:求解n以内与n不互质的数的个数现在我来梳理下我那个晚上到底发生了什么。。。。。刚开始,看到这题,我想的是,求解不互质个数=n-互质的个数那这题就转换成求解互质的个数。无奈当时数学不好啊,好气啊。求解互质那第一步要先求出n的质因数,这个好办,我素数筛选下
2017-01-04 21:48:16
582
原创 整数分解问题(二)
我们一起来看看这个问题吧!上个问题我们已经接触过整数分解了,那么你有没有一定的了解了吗?题意:输出N的整数分解有没有感觉比上一题简单多了,没有脑筋急转和,题意粗暴明了,唯一让人头疼的是,怎么输出呢?需要注意的是,如果幂为1次,则不需要输入该幂!如果幂超过两次,则需要用括号单独包起来#include #include using namespace std; #define
2017-01-03 11:21:50
1169
原创 整数拆分问题(1)
我们一起来看看这个问题,说实话,当时一看到这题的时候我怕了,不过想通后那叫一个爽啊!题意:给你一个N,求满足1/X+1/Y=1/N的X,Y种类数当你看到这题的时候,你会怎么做呢?当时我看到第一反应就是先化简,因为1/X这个数肯定是比1小的小数,这个精度问题是个大问题,而且两个小数相加也不会完全等于那个小数。所以,想办法划成整数关系式。两边同乘XY,得 Y+X=XY/N
2017-01-02 21:48:23
703
原创 最大子段和问题
最大子段和的问题相信大家遇到了很多次,碰巧今日我想到了时间复杂度,就在考虑什么情况下可以考虑什么方案呢?相信最普遍的暴力大家是知道的,今天我们一起来讨论下这个问题吧!方案一:暴力,可行性❤最简单的方法当然是最简单粗暴的啦,三层枚举,时间复杂度为O(n^3)。可行性范围:n#include using namespace std;#define N 101int node[
2016-12-28 22:14:42
3352
转载 HDU 1342 Lotto
LottoTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1727 Accepted Submission(s): 848Problem DescriptionIn a Lotto I
2016-04-18 22:19:13
584
原创 分治小结
分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解 1、解决算法实现的同时,需要估算算法实现所需时间。分治算法时间是这样确定的: 解决子问题所需的工作总量(由 子问题的个数、解决每个子问题的工作量 决定) 合并所有子问题所需的工作量 2、分治法是把任意大小问题尽
2016-04-11 22:22:48
490
原创 递归小结
众所周知,递归思想在许多算法里尤为重要,尤其是遍历和搜索里,所以总结下:递归算法的实质是: 把求解问题转化为规模缩小了的同类问题的子问题,然后递归调用函数(或子过程)来表示问题的解,通过多次递归调用,最终可求出最小问题的解,然后通过这个最小问题的解返回上层调用,再求出次小问题的解,再返回上层调用,不断重复,最终得到整个问题的解,完成递归操作。注意点:
2016-04-10 21:51:30
623
原创 枚举小结
一想到枚举,就是暴力,近日在看算法书,感觉厘清思想比较重要,所以来写下一点自己的感想。例题:在 a b c d e = f (a~f为0~9)) 中添加+、-、*、/ 号来使得等式成立。分析该式子,由5个数构成的算式,一共需要填入4个运算符,注意点:1、除法分母不为0 2、乘除法运算级别优先于加减法思路: 两个变量 left 和 right 分别保存上次运算结
2016-04-10 20:09:38
479
原创 POJ 1107 W's Cipher
题目链接: http://poj.org/problem?id=1107W's CipherTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 5322 Accepted: 2675DescriptionWeird Wally's Wirele
2015-11-21 20:40:48
1009
原创 RMQ和LCA总结
1、 概述LCA(Least Common Ancestors),即最近公共祖先,是指这样一个问题:在有根树中,找出某两个结点u和v最近的公共祖先(另一种说法,离树根最远的公共祖先)。 RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j2、 RMQ
2015-09-14 21:59:54
636
原创 HDU 4730 We Love MOE Girls
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4730We Love MOE Girls Problem DescriptionChikami Nanako is a girl living in many different parallel worlds. In this problem we talk a
2015-09-03 19:22:32
501
原创 HDU 1106 排序
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1106题意很清晰啦,中文题,仔细读题就可以了!!!还有思路清晰#include #include #include #include #include using namespace std;char a[1005];int main(){ int i,j,b[1
2015-09-02 22:13:56
387
原创 HDU 5158 Have meal
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5158Have mealProblem DescriptionI have been in school for several years, so I have visited all messes here. Now I have lost intersts
2015-09-02 18:54:15
603
原创 HDU 5159 Card(数学期望)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5159Card Problem DescriptionThere are x cards on the desk, they are numbered from 1 to x. The score of the card which is numbered i(1
2015-09-02 18:18:45
432
原创 POJ 2421 Constructing Roads
题目链接:http://poj.org/problem?id=2421Constructing RoadsTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 21105 Accepted: 8916DescriptionTher
2015-08-31 20:22:23
550
转载 并查集总结
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点
2015-08-31 09:58:52
431
原创 hdu4690 EBCDIC
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4690 EBCDIC Problem DescriptionA mad scientist found an an
2015-08-19 16:08:27
630
原创 hdu4651 Partition
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4651PartitionProblem DescriptionHow many ways can the numbers 1 to 15 be added together to make 15? The technical term for what you are a
2015-08-07 13:42:23
484
原创 广搜和深搜总结
BFS#include #include #include #include using namespace std; const int maxn=100; bool vst[maxn][maxn]; // 访问标记 int dir[4][2]={0,1,0,-1,1,0,-1,0}; // 方向向量 //八方向 int dir[8][2]={0,1,0,-1
2015-08-02 15:48:01
1190
原创 背包问题
#include#include#include using namespace std;#define N //件数int dp[NN],i,k,v;void bag01( int C,int W ) //01背包(费用C,价值W){ for(i=v;i>=C;i--) dp[i]=max( dp[i-C]+W,dp[i] );}void complete(int
2015-08-02 14:28:21
369
原创 HDU 1166 敌兵布阵
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166敌兵布阵Problem DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段
2015-08-02 13:45:44
409
原创 大数运算总结
大数求和#include #include #define max 3000char a[max],b[max],c[max];int main(){ int i,j,k,s,x,y,z; while(~scanf("%s%s",a,b)){ i=strlen(a)-1; j=strlen(b)-1; k=s=0; while(i>=0||j>=0){ if(
2015-08-02 10:37:19
528
原创 HDU 4607 Park Visit
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4607 Park Visit
2015-07-22 16:29:48
437
原创 HDU4387 Stone Game
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4387 Stone GameProblem Description Alice and Bob are playing a game. It is played i
2015-07-09 18:58:04
408
原创 POJ 1051 P,MTHBGWB
题目链接:http://poj.org/problem?id=1051P,MTHBGWBTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 7509 Accepted: 4318DescriptionMorse code rep
2015-05-18 13:54:08
414
原创 hdu 1272 小希的迷宫
题目:题意:代码如下:#includeint pre[100001],max;int flag,a[100001],b[100001];int find(int x){ return pre[x]==x?x:find(pre[x]);} void join(int x,int y){ int fx=find(x); int fy=find(y)
2015-04-08 20:19:41
349
原创 hdu 1233 还是畅通工程
题目: http://acm.hdu.edu.cn/showproblem.php?pid=1233题意: 又是建公路,已知有n个村子,告诉你相邻两个村子的距离,求建成公路的最小长度思路: 有两种方案啊,可以并查集来做,也可以最小生成树prim算法做,至于选择方案当然是随便啦代码一://并查集#include#incl
2015-04-08 19:37:14
383
原创 hdu 1213 How Many Tables
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1213题意: 已知m,n,m代表朋友的数量,有n组人相识,相识的人可以坐一张桌子,求至少需要安排几张桌子。代码如下:#include int a[1010];int find(int x){ return x==a[x]?x:find(a[x]);
2015-04-08 19:23:08
375
原创 hdu 1232 畅通工程
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1232题意: 省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?题解: 并查集,道路互相连通的则属于同一个集合,求出不同集合数即可代码如下:
2015-04-05 19:06:14
350
原创 CodeForces 480A. Exams
题目:http://codeforces.com/problemset/problem/480/A题意: 又是头疼的考试周啊,总共有n场考试,g某人想尽快的结束考试,代码如下:#include #include using namespace std;#define N 5005struct ye { int a, b;}
2015-03-25 22:22:46
747
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人