
C++
文章平均质量分 52
同学少年
没有什么不可能!
展开
-
第二届战神杯线上编程挑战赛月赛第一题:回文数
题目详情:Njzy学习了回文串后联想到了回文数,他希望统计出一个区间内的所有回文数。现在给定一个闭区间[a,b],求这个区间里有多少个回文数。比如[20,30],只有一个回文数那就是22. 输入描述: 输入包含多组测试数据,每组测试数据包含两个整数a,b,(0输出描述: 对于每组测试数据输出相应原创 2014-06-18 21:30:57 · 2115 阅读 · 2 评论 -
[数据结构] 二叉树的建立及其基本操作
如图:代码: #include #include #include #include using namespace std;char ch;typedef struct BinNode{ char data; struct BinNode *lchild,*rchild;}BinNode,*BinTree; //二叉树链式原创 2014-05-28 19:16:32 · 5486 阅读 · 1 评论 -
[ACM] hdu 1233 还是畅通工程(最小生成树)
还是畅通工程Problem Description某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。 Input测试输入包含若干测试用例。每个测试用例的第1原创 2014-05-26 14:53:39 · 2345 阅读 · 0 评论 -
[ACM] hdu 1253 胜利大逃亡 (三维BFS)
胜利大逃亡Problem DescriptionIgnatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会.魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C的矩阵,刚开始Ignatius被关在(0,0,0)的位置,离开城堡的门在(A-1,B-1,C-1)的位置,现在知道魔王将在T分钟后回到城堡,Ignatius每分钟原创 2014-05-21 15:32:00 · 2076 阅读 · 0 评论 -
[数据结构] KMP字符串匹配
采用了next[0]=-1的形式,字符串开始位置都是从0开始代码:#include #include #include using namespace std;const int maxn=110;int next[maxn];int nextval[maxn];string s1;//主串string s2;//模式串int len1;//主串的长度原创 2014-05-14 19:09:16 · 1738 阅读 · 0 评论 -
sscanf函数用法详解
sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ... ); int scanf( const char *format [,argument]... ); 说明: sscanf与scanf类似,都是用于输入的,只转载 2014-04-27 19:30:46 · 1374 阅读 · 0 评论 -
五一九天假期ACM集训记录【4月27日—第二天】
今天上午九点到下午两点,我们做了山东省第二届ACM原题,整体结果还比较不错,我们队做出了4道题,两道模拟,一道字符串处理,一道高数问题。比赛前期我们配合得不错,比较快速的A出了两道模拟题。但后来状态不太好,主要是我的问题,后来我做的是那道字符串处理的题目,有点麻烦,分割单词,然后在单词中提取数字,数字还不是标准的,做了好长时间,终于测试数据过了,提交了一下,结果果断地返回了一个WA,那种感觉太纠结原创 2014-04-27 19:21:55 · 1630 阅读 · 0 评论 -
[2012山东ACM省赛] The Best Seat in ACM Contest (模拟)
The Best Seat in ACM ContestTime Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述Cainiao is a university student who loves ACM contest very much. It is a festival for him once when h原创 2014-04-27 16:18:56 · 1551 阅读 · 0 评论 -
[ACM] Hrbustoj 1376 能量项链 (区间动态规划)
能量项链Time Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 55(20 users)Total Accepted: 22(19 users)Rating: Special Judge: NoDescription原创 2014-04-26 16:20:34 · 3950 阅读 · 0 评论 -
[数据结构] 迷宫问题(栈和队列,深搜和广搜)
代码:#include #include #include #include #include using namespace std;int dx[4]={0,-1,1,0};//方向int dy[4]={-1,0,0,1};bool vis[6][6];int total=0;//多少可到达路径int sx=1,sy=1;//入口出口坐标int ex=4,ey=4;原创 2014-04-26 12:55:24 · 3661 阅读 · 0 评论 -
[数据结构] N皇后问题
代码:#include #include #include using namespace std;const int N=100;int c[N];//皇后第i行放在第几列上int n,total;int cc;//方法数void dfs(int cur){ if(cur>n) { cout<<"第"<<cc++<<"种方法:"<<endl原创 2014-04-26 12:52:45 · 2570 阅读 · 1 评论 -
[ACM] hrbustoj 1400 汽车比赛 (树状数组)
汽车比赛Time Limit: 1000 MSMemory Limit: 65536 KTotal Submit: 188(56 users)Total Accepted: 72(50 users)Rating: Special Judge: NoDescription原创 2014-04-21 20:35:42 · 1663 阅读 · 0 评论 -
[ACM] poj 1182 食物链(并查集)
食物链Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 41134 Accepted: 11965Description动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A原创 2014-04-14 21:20:11 · 2716 阅读 · 1 评论 -
[2010山东ACM省赛] Greatest Number(数的组合+二分搜索)
Greatest NumberTime Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述Saya likes math, because she think math can make her cleverer.One day, Kudo invited a very simple game:Giv原创 2014-04-13 16:01:01 · 2317 阅读 · 0 评论 -
[ACM] hdu 1536 S-Nim(Nim组合博弈 SG函数打表)
S-NimTime Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4004 Accepted Submission(s): 1732Problem DescriptionArthur and his siste原创 2014-04-11 15:00:10 · 2492 阅读 · 1 评论 -
[ACM] hdu 1850 Being a Good Boy in Spring Festival(Nim博弈)
Being a Good Boy in Spring FestivalTime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3819 Accepted Submission(s): 2269Problem Descr原创 2014-04-09 20:48:03 · 1334 阅读 · 0 评论 -
[ACM] poj 2484 A Funny Game(对称博弈)
A Funny GameTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 3795 Accepted: 2268DescriptionAlice and Bob decide to play a funny game. At the beginning of t原创 2014-04-08 19:54:58 · 1656 阅读 · 0 评论 -
[ACM] hdu 2177 取(2堆)石子游戏(威佐夫博弈)
Problem Description 有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。如果你胜,你第1次怎样取子? I原创 2014-04-08 19:36:26 · 2708 阅读 · 2 评论 -
[ACM] hdu 2079 选课时间(普通型母函数)
Problem Description 又到了选课的时间了,xhd看着选课表发呆,为了想让下一学期好过点,他想知道学n个学分共有多少组合。你来帮帮他吧。(xhd认为一样学分的课没区别) Input 输入数据的第一行是一个数据T,表示有T组数据。每组数据的第一行是两个整数n(1 接着有k行,每行有两个整数a(1 Output原创 2014-04-07 21:36:20 · 1876 阅读 · 0 评论 -
[ACM] hdu 1134 Game of Connections(大数+Catalan数)
Game of ConnectionsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2923 Accepted Submission(s): 1649Problem Description This原创 2014-04-07 19:34:46 · 1925 阅读 · 0 评论 -
组合数打表
代码: #include #include using namespace std;int c[11][11];void init(){ memset(c,0,sizeof(c)); c[1][0]=c[1][1]=1; for(int i=2;i<=10;i++) { c[i][0]=c[i][i]=1原创 2014-04-07 16:50:43 · 2738 阅读 · 0 评论 -
[ACM] hdu 1521 排列组合(指数型母函数)
排列组合Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2132 Accepted Submission(s): 877Problem Description有n种物品,并且知道每种物品的数量。要求从中选出m件原创 2014-04-07 14:38:16 · 1758 阅读 · 0 评论 -
队列逆置
思路:用一个栈起到过渡的作用。先将队列中的元素放入栈中,然后初始化队列,再将元素从栈中取出放到初始化的队列中。代码:#include #include #include using namespace std;const int maxn=10;typedef struct{ char data[maxn]; int front,rear原创 2014-04-05 14:34:08 · 3656 阅读 · 0 评论 -
[ACM] 括号匹配问题(栈的使用)
括号配对问题时间限制:3000 ms | 内存限制:65535 KB难度:3描述 现在,有一行括号序列,请你检查这行括号是否配对。输入 第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"原创 2014-04-05 13:18:47 · 4992 阅读 · 0 评论 -
2014蓝桥杯后记
前两天,蓝桥杯的成绩出来了,令我想不到的是,竟然得了一等奖。真的很意外,因为当我从考场出来的那一刻就觉得自己做得很差,大题没有做出来,占了41分,小题做得还可以。这样的结果令我意外,也令我震惊,生活就是这样,总是喜欢跟人开玩笑,也总是充满着惊喜与机遇。原创 2014-04-04 23:05:54 · 2218 阅读 · 3 评论 -
[ACM] hdu 1286 找新朋友(欧拉函数)
找新朋友Time Limit: 2000/1000 MS(Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s):6928 Accepted Submission(s): 3593Problem Description 新年快到了,“猪头帮协会”准备搞一个聚会,已原创 2014-04-02 20:39:48 · 1273 阅读 · 0 评论 -
环形队中实现队列的基本运算
/*队空条件:front=rear队满条件:(rear+1)%MaxSize=front进队e操作:rear=(rear+1)%MaxSize; 将e放在rear处出队操作:front=(front+1)%MaxSize;取出front处元素e; */#include #include using namespace std;const int maxn=4;t原创 2014-04-02 19:17:33 · 2833 阅读 · 0 评论 -
队列的顺序存储结构及其基本运算的实现
代码:#include #include using namespace std;const int maxn=500;typedef struct{ int data[maxn]; int front,rear;}queue;//初始化队列void init(queue *&q){ q=(queue*)malloc(s原创 2014-04-02 18:56:20 · 2710 阅读 · 0 评论 -
栈的链式存储结构及其基本运算实现
#include #include using namespace std;typedef struct linknode{ int data; struct linknode *next;}Listack;//初始化栈void init(Listack *&s){ s=(Listack*)malloc(sizeof(Lista原创 2014-04-02 18:21:10 · 1969 阅读 · 0 评论 -
栈的顺序存储结构及其基本运算实现
#include #include using namespace std;const int maxn=500;typedef struct { int data[maxn]; int top;}Stack;//初始化stackvoid init(Stack *&s){ s=(Stack *)malloc(sizeof(Stack));原创 2014-04-02 18:20:04 · 2188 阅读 · 0 评论 -
最大公约数求解
方法一:辗转相除法优点:代码简单,容易写。缺点:开销大,用时间多。代码:int gcd(int a,int b){ return b==0?a:gcd(b,a%b);}方法二:二进制算法优点:速度快。主要思想:前提:a>b,分情况讨论:1.a和b均为偶数,gcd(a,b)=2*gcd(a/2,b/2);2.a为偶数b为奇数,gcd(a,b原创 2014-03-31 18:04:58 · 1726 阅读 · 0 评论 -
调用函数判断一个数是否为素数(传统+优化)
#include #include using namespace std;bool prime1(int n) //传统的判断素数。{ if(n==1) return 0; if(n==2) return 1; int t=(int)sqrt(n); for(int i=2;i<=t;i++)原创 2014-03-25 12:47:51 · 2147 阅读 · 0 评论 -
next_permutation(,)用法
生成n个数的全排列。比如初始序列为 1 2 3 4 则下一个序列为 1 2 4 3 按序生成。#include #include #include using namespace std;int main(){ char a[3]={'a','b','c'};//第一个排列保证正序,有时候根据题目要求,需要对其进行排序处理。 for(in原创 2014-03-25 12:23:56 · 8291 阅读 · 0 评论 -
[ACM] hdu 1114 Piggy-Bank(完全背包)
Piggy-BankTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9921 Accepted Submission(s): 4997Problem Description Before ACM can原创 2014-03-20 17:45:50 · 1816 阅读 · 0 评论 -
[ACM] hdu 2602 Bone Collector(01背包)
Bone CollectorTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 25042 Accepted Submission(s): 10147Problem Description Many yea原创 2014-03-20 17:30:14 · 1366 阅读 · 0 评论 -
[ACM] hdu 1016 Prime Ring Problem (DFS)
Prime Ring ProblemTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 23268 Accepted Submission(s): 10363Problem DescriptionA ring原创 2014-03-20 15:28:22 · 1331 阅读 · 0 评论 -
[蓝桥杯历届题目] 黄金队列
黄金分割数0.618与美学有重要的关系。舞台上报幕员所站的位置大约就是舞台宽度的0.618处,墙上的画像一般也挂在房间高度的0.618处,甚至股票的波动据说也能找到0.618的影子....黄金分割数是个无理数,也就是无法表示为两个整数的比值。0.618只是它的近似值,其真值可以通过对5开方减去1再除以2来获得,我们取它的一个较精确的近似值:0.618034有趣的是,一些简单的数列中也会包含原创 2014-03-20 14:39:46 · 1760 阅读 · 0 评论 -
数据结构上机实验:单链表操作
#include #include using namespace std;typedef struct Node{ char c; struct Node *next;}*LinkList,LNode;//初始化单链表hLinkList Init(LinkList &h){ h=(LNode*)malloc(sizeof(LN原创 2014-03-19 21:02:18 · 4252 阅读 · 0 评论 -
string.find()函数用法
1.返回字符串s1在s中的位置,如果没有找到,则返回-1#include #include using namespace std;int main(){ string s="what are you dong"; string s1="are"; int position; position=s.find(s1); if(posit原创 2014-03-18 19:51:59 · 35031 阅读 · 3 评论 -
substr(),strstr()函数用法
#include <iostream>#include <string.h>using namespace std;int main(){ string s="abcdefg"; string s1=s.substr(2,6);//s1为字符串s起始位置为2,长度为6的一段字符串,注意s的位置是从0开始的,即‘a'的位置为0 cout&l...原创 2014-03-18 19:21:41 · 7858 阅读 · 1 评论