自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 栈——数组实现

#include<iostream> #include<cstring> #include<cstdio> #include<cmath> #include<algorithm> using namespace std; #define ms(a) memset(a,0,sizeof(a)) #define N 100 typedef i...

2018-06-30 23:23:49 157

原创 栈——链表实现

#include<iostream> #include<cstring> #include<cstdio> #include<cmath> #include<algorithm> using namespace std; #define ms(a) memset(a,0,sizeof(a)) #define N 30 //栈 需要一个表头...

2018-06-30 17:39:46 168

原创 无向图——邻接表和邻接矩阵的实现

邻接矩阵#include<iostream> #include<cstring> #include<cstdio> #include<cmath> #include<algorithm> using namespace std; #define ms(a) memset(a,0,sizeof(a)) #define N 50 //节点中包...

2018-06-30 16:45:15 1853

原创 线性表——指针实现

struct node{ Elementtype element; node* next; }; typedef node* LIST; typedef node* position; position End(LIST L){ position q=L; while(q->next!=NULL){ q=q->next; } return q; } void In...

2018-06-26 16:31:42 836

原创 食物链

问题描述:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是"1 X Y",表示X和Y是同类。 第二种说法是"2 X Y",表示X吃Y。 此人对N个动物,用上述两种说法,一句接一句地说出K句话,...

2018-05-09 18:48:32 2372

原创 团伙

问题描述:1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。两个强盗是同一团伙的条件是当且仅当他们是朋友。现在给你一些关于强盗们的信息,问你最多有多少个强盗团伙。输入格式:第一行是一个整数N(2<=N<=1000),表示强盗的个数(从1编号到N)。 第二行M(1<=M...

2018-05-09 18:02:23 205

原创 家族

题目描述 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。 输入格式 第一行:三个整数n,m,p,(n<=5000,m<=5000,p...

2018-05-09 17:40:16 127

原创 畅通工程

Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?  Input 测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目...

2018-05-09 15:09:08 84

原创 搜索——炸弹人

炸弹人:现有关卡:游戏者只有一枚炸弹,且炸弹可以杀死杀伤范围内所有敌人。请问炸弹放在哪个位置,可以消灭最多的敌人。输入:13 13 3 3##############GG.GGG#GGG.####.#G#G#G#G##.......#..G##G#.###.#G#G##GG.GGG.#.GG##G#.#G#.#.#.###G...G.....##G#.#G###.#G##...G#GGG.GG##...

2018-04-24 19:38:56 219

原创 搜索——解救小哈

小哈去玩迷宫,结果迷路了,小哼去救小哈。迷宫由n行m列的单元格组成(n和m都小于等于50),每个单元格要么是空地,要么是障碍物。问题:帮小哼找到一条从迷宫的起点通往小哈所在位置的最短路径。(注意:障碍物不能走,小哼也不能走出迷宫外)输入例如:5 40 0 1 00 0 0 00 0 1 00 1 0 00 0 0 11 1 4 3输出:7深搜#include<iostream> #in...

2018-04-24 17:23:26 420

原创 线性表——数组实现

#include<iostream> #include<cstring> #include<cstdio> using namespace std; #define ms(a) memset(a,0,sizeof(a)) #define maxlength 100 /* 线性表数组实现,定义一个具有两个域结构体,数组下标为0的地方不存放元素,可以使位置i对应整...

2018-04-02 17:27:18 657

原创 Holding Bin-Laden Captive!

Problem DescriptionWe all know that Bin-Laden is a notorious terrorist, and he has disappeared for a long time. But recently, it is reported that he hides in Hang Zhou of China! “Oh, God! How terrible...

2018-02-18 20:14:57 158

原创 模板——最大公约数

一. 欧几里德算法 即辗转相除法 由 gcd( a , b ) = gcd ( b , a % b ) #include #include #include using namespace std; void swap(int &a,int &b){ int tem=a; a=b; b=tem; } int Gcd(int a,int b){ if(a<b) swap(a,b

2018-02-01 17:36:00 159

原创 模板——判断素数

1.通过枚举来判定 k 是否为素数 // 是素数,返回1,不是素数,返回0 int IsPrime(int k){     if(k==2)         return 1;     if(k%2==0)         return 0;     for(int i=3;i*i<=k;i+=2){         if(k%i==0)             return 0

2018-01-29 13:40:35 284

原创 搬寝室

Problem Description搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是会很累,因为2*k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是和左右...

2018-01-28 11:59:39 151

原创 计算直线的交点数

Problem Description平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。 Input输入数据包含多个测试实例,每个测试实例占一行,每行包含一个正整数n(n&lt;=20),n表示直线的数量.Output每个测试实例对应一行输出,从小到大列出所有相交方案,其中每个数为可能的交点数,每行的整数之间用一个空格隔...

2018-01-25 18:48:23 1697

原创 免费馅饼

Problem Description都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手...

2018-01-25 16:11:09 169

原创 红色病毒问题

Problem Description医学界发现的新病毒因其蔓延速度和Internet上传播的"红色病毒"不相上下,被称为"红色病毒",经研究发现,该病毒及其变种的DNA的一条单链中,胞嘧啶,腺嘧啶均是成对出现的。现在有一长度为N的字符串,满足一下条件:(1) 字符串仅由A,B,C,D四个字母组成;(2) A出现偶数次(也可以不出现);(3) C出现偶数次(也可以不出现);计算满足条件的字符串个数...

2018-01-22 18:09:00 516

原创 模板——卡特兰(Catalan)数

卡特兰(Catalan)数     令h(0)=1,h(1)=1,catalan数满足递推式 :     h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)     数据特点:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, …     另类递推式 :

2018-01-22 18:08:34 202

转载 模板——矩阵快速幂

#include #include using namespace std; #define NUM 50 int MAXN ,n,mod; struct Matrix{     int a[NUM][NUM];     void init(){         memset(a,0,sizeof(a));         for(int i=0;i<MAXN;i++)

2018-01-22 17:43:27 86

原创 Number Sequence

Problem DescriptionA number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.Given A, B, and n, you are to calculate the value of f(n).InputThe input consi...

2018-01-22 15:49:48 190

原创 吃糖果

Problem DescriptionHOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢将一样的糖果放在一起吃,喜欢先吃一种,下一次吃另一种,这样;可是Gardon不知道是否存在一种吃糖果的顺序使得他能把所有糖果都吃完?请你写个程序帮忙计算一下。Input第一行有一个整数T,接下来T组数据,每组数据占2行,第一行是一个整数N(0&lt;N&lt...

2018-01-22 10:25:31 163

原创 排列2

Problem DescriptionRay又对数字的列产生了兴趣:现有四张卡片,用这四张卡片能排列出很多不同的4位数,要求按从小到大的顺序输出这些4位数。Input每组数据占一行,代表四张卡片上的数字(0&lt;=数字&lt;=9),如果四张卡片都是0,则输入结束。Output对每组卡片按从小到大的顺序输出所有能由这四张卡片组成的4位数,千位数字相同的在同一行,同一行中每个四位数间用空格分隔。每...

2018-01-21 21:04:05 944

原创 Ignatius and the Princess II

Problem DescriptionNow our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. f...

2018-01-21 20:17:26 96

原创 小知识——输出位数控制

三位数反转时 遇到 520 输出 025 #include int main(){ int n,m; scanf("%d",&n); m=(n%10)*100+(n/10%10)*10+n/100; printf("%03d",m);//可以控制输出3位数,用0补齐 return 0; }

2018-01-16 17:02:17 501

原创 模板——快速幂

快速幂模版 int Quick (int a,int b,int c){ //a^b%c int ans=1; //answer 记录结果; a=a%c; //对a进行预处理,使a不超过c; while(b){ if(b&1)//当b的二进制数最后一位为1时 ans=ans*a%c; b>>=1; //b=b/2 a=a*a%c;

2018-01-14 20:02:00 116

原创 模板——欧拉筛

欧拉筛模板 #define N 1000 bool check[N];//数组表示第i个数是否为素数,是为true,不是为false; int prime[N];//数组存放素数序列,从0开始都是素数(递增序列) int min_prime[N];//数组存放每个数的最小素因数 int Prime(int n){//返回n中素数的个数     memset(check,true

2018-01-14 16:18:40 215

原创 抽屉原理——poj2356 Find a multiple

Description The input contains N natural (i.e. positive integer) numbers ( N <= 10000 ). Each of that numbers is not greater than 15000. This numbers are not necessarily different (so it may happen t

2018-01-13 17:28:47 155

原创 组合数学1

一.抽屉原理 1.抽屉原理(鸽笼原理) m个元素分成n组,那么总有一个组至少含有[m/n]个元素([ ]为‘上整数’记号)。 应用: (1)边长为1的正方形内部任置5个点,则其中必有2个点,它们之间的距离小于或等于sqrt(2)/2。   (相当于把正方形均分成四个相等的小正方形,则至少有两个点在同一个小正方形中,一个正方形的对角线长为sqrt(2)/2) (2)对于给定的自然数m,任取

2018-01-13 14:07:17 225

空空如也

空空如也

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

TA关注的人

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