[c/c++]算法
文章平均质量分 71
算法习题练习
我菜就爱学
某高校在校生,研究方向计算机视觉。刚刚入行的小白,还需要很大的空间提升
展开
-
链表的插入、删除和查询—C语言
单链表的插入、删除和查询:程序代码:#include<stdio.h>#include<stdlib.h>struct node{ int date; struct node *next;};int n;typedef struct node LNode,*Link;void creat(Link head,int n);void insert(Li...原创 2019-07-15 08:28:26 · 314 阅读 · 0 评论 -
UVA-537--Artificial Intelligence?(C语言)
题目描述: Artificial Intelligence?Physics teachers in high school often think that problems given as text are more demanding than pure computations. After all, the pupils have to read and understand ...原创 2019-07-14 14:44:10 · 266 阅读 · 1 评论 -
UVA —10361—Automatic Poetry
题目描述“Oh God”, Lara Croft exclaims, “it’s one of these dumb riddles again!”In Tomb Raider XIV, Lara is, as ever, gunning her way through ancient Egyptian pyramids, prehistoric caves and medival hallw...原创 2019-07-14 14:30:19 · 216 阅读 · 1 评论 -
并查集算法
简介:并查集是树的一种数据结构,用于处理多组不相交际集合之间的间接关系。集是单元素构成的集合,查是查找两两集合是否有关系,并就是把有联系的集合合并。如擒贼先擒王,把最终的boss找出来。例题详细介绍:题目:今天是伊格纳修斯的生日。他邀请了很多朋友。现在是晚餐时间。伊格纳修斯想知道他至少需要多少张桌子。你必须注意到并非所有的朋友都相互认识,所有的朋友都不想和陌生人呆在一起。这个问题的一个重...原创 2019-08-07 10:20:04 · 226 阅读 · 0 评论 -
HRBUST - 1170(判断括号是否匹配)
题目: 欢迎大家加入ACM!要深入的学习ACM的相关知识,首先就必须学会一门编程语言,推荐C/C++。不过对于初学者,因为没编过多少代码,经常出现变异错误,其实就是语法错误。现在要你检查一段代码的语法是否否正确。为了简化问题,我们只检查 (、)、{、} 括号是否匹配了,并且在输入的代码中不包含字符的’(’,’)’,’{’,’}’。其他语法错误不检查,如 “#include &l...原创 2019-08-06 11:29:25 · 302 阅读 · 0 评论 -
数学算法总结(面积、博弈)
1、求多边形的面积:(1)已知顶点坐标:公式:s=0.5*abs((x1 * y2-x2 *y1)+(x2 *y3-x3 *y2)+、、、+(xn-1 *yn-xn *yn-1)) 这个公式不管是凹凸边形或者规则的,不过如果是顺时针输入点就是负的,逆时针就是正的。例题:http://acm.hdu.edu.cn/showproblem.php?pid=2036`#include<...原创 2019-08-04 10:51:05 · 310 阅读 · 0 评论 -
青蛙的约会—POJ1061
题目:两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总能碰到对方的。但是除非这两只青蛙在同一时间跳到同一点上,不然是永远都不可能碰面的。为了帮助这两...原创 2019-08-03 11:58:43 · 990 阅读 · 0 评论 -
Wormholes—POJ3259
Problem DescriptionWhile exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is very peculiar because it is a one-way path that delivers you to its destinat...原创 2019-08-02 10:25:43 · 215 阅读 · 0 评论 -
看病要排队——HDU1873
第一次写这个题的时候感觉很麻烦,最后回头根据别人题解再来看就是模拟加队列的优先级问题,然后早上写的时候因为if 和else if wa了好多次,最后好不容易写出来了就分享一下。题目: 看病要排队这个是地球人都知道的常识。不过经过细心的0068的观察,他发现了医院里排队还是有讲究的。0068所去的医院有三个医生(汗,这么少)同时看病。而看病的人病情有轻重,所以不能根据简单的先来先服...原创 2019-08-01 14:42:19 · 372 阅读 · 0 评论 -
D - Silver Cow Party——POJ3268(连续用两次Dijkstra算法)
题目:编号为1…N的N个农场中的每一个(1≤N≤1000)的一头奶牛将参加在#X农场(1≤X≤N)举行的大型奶牛聚会。总共M(1≤M≤100,000)单向(单向道路连接成对的农场;道路i需要Ti(1≤Ti≤100)单位时间来遍历。每头奶牛都必须走到聚会上,当聚会结束时,回到她的农场。每头奶牛都很懒,因此选择最短时间的最佳路线。由于道路是单向的,因此牛的返回路线可能与她原来的路线不同。在所有的奶...原创 2019-07-31 18:06:38 · 233 阅读 · 0 评论 -
简单计算器 ——HDU(1237)
题目: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。Input测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。Output对每个测试用例输出1行,即该表达式的值,精确到小数点后2位。Sample Input1 + 24 + 2 * ...原创 2019-07-30 18:11:30 · 322 阅读 · 0 评论 -
B - 辛普森一家的隐藏人才(KMP)
题目:荷马:玛吉,我刚想办法发现一些我们不知道的人才。玛吉:是的,它是什么?荷马:以我为例。我想知道我是否有政治才能,好吗?玛吉:好的。荷马:所以我采取一些政治家的名字,克林顿说,并试图找到最长前缀的长度以克林顿的名字命名,这是我名字中的后缀。这就是我与克林顿这样的政治家有多接近Marge:为什么选择最长的前缀是后缀???荷马:嗯,我们的天赋深藏在我们自己里面,Marge。玛吉:...原创 2019-07-30 08:48:07 · 316 阅读 · 0 评论 -
A - Period(KMP)
题目: 对于具有N个字符的给定字符串S的每个前缀(每个字符具有介于97和126之间的ASCII代码),我们想知道该前缀是否是周期性字符串。也就是说,对于每个i(2 <= i <= N),我们想要知道最大的K> 1(如果有的话),使得长度为i的S的前缀可以写为AK,即A级联K时间,对于一些字符串A.当然,我们也想知道时期K.输入包含几个测试用例。每个测试用例包含两行。第一行包...原创 2019-07-29 18:15:22 · 268 阅读 · 0 评论 -
Frogger(Floyd算法)
题目:Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sitting on another stone. He plans to visit her, but since the water is dirty and full of tourists...原创 2019-07-28 08:58:59 · 492 阅读 · 0 评论 -
最短路径的两大算法
Floyd- Warshall算法:这个算法就是让我们去寻找从点i到点j的距离,有以下两种情况:(1). 两点直接到达的距离最短。(2). 两点之间通过1个或者1个以上节点连接到达的距离最短。其中主要代码只有五行,通过不同的点去中转看看中转之后的点到达的距离与直接到达是否小,如果小就更新距离。#include<stdio.h>int main(){ int e[10]...原创 2019-07-27 17:26:38 · 472 阅读 · 0 评论 -
Heavy Transportation(Dijkstra算法)
题目:Hugo Heavy很高兴。在Cargolifter项目破裂后,他现在可以扩展业务。但他需要一个聪明的人告诉他,他的客户是否真的有办法将他的巨型钢制起重机建造到需要所有街道都能承受重量的地方。 幸运的是,他已经有了所有街道和桥梁以及所有允许重量的城市规划。不幸的是,他不知道如何找到最大重量能力,以告诉他的客户起重机有多重。但你肯定知道。问题你将获得城市的计划,由街道(具有重量限制)描...原创 2019-07-26 18:22:10 · 358 阅读 · 1 评论 -
G - Prime Ring Problem(深搜)
题目:A ring is compose of n circles as shown in diagram. Put natural number 1, 2, …, n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.Note: the number of...原创 2019-07-25 08:58:06 · 198 阅读 · 0 评论 -
STL—map容器
使用map容器,它的元素数据是键值和映照数据,形如<string,string>、<string,int>、<int,double>。使用时加一个#include< map >就行了。以下用代码实现它的功能:#include<map>#include<string>#include<iostream>#p...原创 2019-07-24 08:29:29 · 154 阅读 · 0 评论 -
胜利大逃亡---三维数组的广搜
题目: Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会.魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C的矩阵,刚开始Ignatius被关在(0,0,0)的位置,离开城堡的门在(A-1,B-1,C-1)的位置,现在知道魔王将在T分钟后回到城堡,Ignatius每分钟能从一个坐标走到相邻的六个坐标中的其中一个.现在给你城堡的地图...原创 2019-07-23 21:50:46 · 210 阅读 · 0 评论 -
HDU2319— Card Trick
最近才看的STL—vector,所以就练练手手,写了一道类似的题。## 题目:J - Card TrickThe magician shuffles a small pack of cards, holds it face down and performs the following procedure:1.The top card is moved to the bottom of ...原创 2019-07-20 16:06:44 · 180 阅读 · 0 评论 -
STL—vector、string
vector 向量容器C++代码功能实现#include<vector>#include<stdlib.h>#include<iostream>#include<algorithm>using namespace std;bool Comp(const int &a,const int &b){ if(a!=b) ...原创 2019-07-20 11:33:25 · 230 阅读 · 0 评论 -
二叉树的遍历方式(C语言)
简介:二叉树的遍历分为前序遍历、中序遍历和后序遍历。其存储结构分为顺序结构(数组)和链式结构。顺序结构:利用数组存储二叉树的结点的数据,其结点的父子关系是通过他们的数组的位置来反映的。顺序结构通常对与的是完全二叉树。存储的顺序是从上到下、从左到右。优点:存储空间利用率高、计算简单。缺点:不易实现增加、删除操作。程序代码:#include<stdio.h>int a[101]...原创 2019-07-16 10:27:58 · 265 阅读 · 0 评论 -
栈的问题:HDU—1022 Train Problem I(C语言)
题目: As the new term comes, the Ignatius Train Station is very busy nowadays. A lot of student want to get back to school by train(because the trains in the Ignatius Train Station is the fastest all o...原创 2019-07-15 08:36:33 · 305 阅读 · 0 评论 -
Integer Inquiry(UVA—424)
题目:One of the first users of BIT’s new supercomputer was Chip Diller. He extended his exploration ofpowers of 3 to go from 0 to 333 and he explored taking various sums of those numbers.“This supercom...原创 2019-09-03 17:44:12 · 284 阅读 · 0 评论 -
最大连续子序列 (HDU - 1231)
这是一个dp动态规划的题,上次写了一个最长连续子序列,今天又写了一个最大连续子序列,哈哈…题目:给定K个整数的序列{ N1, N2, …, NK },其任意连续子序列可表示为{ Ni, Ni+1, …,Nj },其中 1 <= i <= j <= K。最大连续子序列是所有连续子序列中元素和最大的一个,例如给定序列{ -2, 11, -4, 13, -5, -2 },其最大...原创 2019-08-23 10:53:03 · 323 阅读 · 0 评论 -
HDU - 5912——Fraction
题目:Mr. Frog recently studied how to add two fractions up, and he came up with an evil idea to trouble you by asking you to calculate the result of the formula below:As a talent, can you figure out ...原创 2019-08-23 10:09:47 · 324 阅读 · 0 评论 -
Choose the best route
题目:One day , Kiki wants to visit one of her friends. As she is liable to carsickness , she wants to arrive at her friend’shome as soon as possible . Now give you a map of the city’s traffic route, a...原创 2019-08-21 13:53:50 · 474 阅读 · 0 评论 -
免费馅饼—(HDU - 1176)
题目:都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手敏捷的高手,但在现实中运动神...原创 2019-08-20 19:58:19 · 642 阅读 · 0 评论 -
大整数的因子(利用求余)
题目:已知正整数k满足2<=k<=9,现给出长度最大为30位的十进制非负整数c,求所有能整除c的k。Input一个非负整数c,c的位数<=30。Output若存在满足 c%k == 0 的k,从小到大输出所有这样的k,相邻两个数之间用单个空格隔开;若没有这样的k,则输出"none"。Sample Input30Sample Output2 3 5 6 解题...原创 2019-08-19 17:58:10 · 704 阅读 · 0 评论 -
大数的加、减、乘、除、幂运算(C语言)
大数的加法运算:大数的加法就是利用字符串输入然后转化为两个数组,然后相加存入另一个数组,如果大于10就要进一。程序代码:#include<stdio.h>#include<string.h>char s1[5000],s2[5000];int a[5000],b[5000],c[10000];int main(){ int i,j,k,n,m,t; wh...原创 2019-08-19 09:02:44 · 1312 阅读 · 0 评论 -
二分图之最大匹配数算法(Kindergarten)
最近又新学了一个算法叫二分匹配,其中有最大匹配数,最大独立集,最大顶点覆盖数、最大团等,不过还有的没有看懂(会看懂的,慢慢来)。最大匹配数:最大匹配数指男女之间有关系的人最大匹配的个数是多少?如:一共三男三女,一共有五种关系,分别是:1 1’ ———— //一号女生和一号男生认识1 2’ ————//一号女生与二号男生认识2 2’ ————//二号女生与二号男生认识2 3’ ...原创 2019-08-17 09:31:45 · 639 阅读 · 0 评论 -
Arctic Network( POJ - 2349)
题目:The Department of National Defence (DND) wishes to connect several northern outposts by a wireless network. Two different communication technologies are to be used in establishing the network: eve...原创 2019-08-16 08:43:08 · 277 阅读 · 0 评论 -
The Unique MST(最小生成树的唯一路径)
最小生成树唯一的路径就是当前权值里,仅有一条路可以走,不存在最小权值一样的情况,如:1 2 2, 2 3 2, 1 3 2,第一次路径为1—2权值为2,但当下一次到3这个点时就存在分歧,因为1—3的权值是2,2—3的权值也是2,有两个选择。例题: https://vjudge.net/contest/319242#problem/KGiven a connected...原创 2019-08-15 08:48:17 · 1064 阅读 · 0 评论 -
Highways(POJ—2485)
题目:Flatopia岛国完全平坦。不幸的是,Flatopia的公共高速公路系统非常糟糕。弗拉托利亚政府意识到了这个问题,并且已经建造了一些连接一些最重要城镇的高速公路。但是,仍有一些城镇无法通过高速公路抵达。有必要建造更多的高速公路,以便能够在不离开高速公路系统的情况下在任何一对城镇之间行驶。Flatopian城镇的编号从1到N,城镇i的位置由笛卡尔坐标(xi,yi)给出。每条高速公路连接两...原创 2019-08-14 10:10:31 · 262 阅读 · 0 评论 -
最小生成树算法
简介:最小生成树算法一共有两种,分别是kruskal算法和prim算法。也属于贪心算法,它的目的就是给定无向图、权值以及顶点,求联通所有边的权值和最小。kruskal算法:先构造一个只含 n 个顶点、而边集为空的子图,把子图中各个顶点看成各棵树上的根结点,之后,从网的边集 E 中选取一条权值最小的边,若该条边的两个顶点分属不同的树,则将其加入子图,即把两棵树合成一棵树,反之,若该条边的两个顶点...原创 2019-08-13 11:20:24 · 428 阅读 · 1 评论 -
KMP算法(A + B for you again—HDU - 1867 )
KMP算法就是求母串中字串的长度或者字串出现的次数,相对于暴力求解的话,KMP算法节省时间,KMP算法就是分两部分next[ ]和kmp中找字串。next[ ]算法是找字串中的前后缀的长度,这样在KMP中寻找时就节省了时间。next[ ]函数代码:void get_next(char s2[],int m){ int i=1,j=0; nex[0]=-1;//初始next[0]=-1 ...原创 2019-08-12 11:45:53 · 236 阅读 · 0 评论 -
Minimum Transport Cost(ZOJ - 1456)
题目:These are N cities in Spring country. Between each pair of cities there may be one transportation track or none. Now there is some cargo that should be delivered from one city to another. The tran...原创 2019-08-11 17:26:21 · 214 阅读 · 0 评论 -
Big Event in HDU(dp算法)
题目:如今,我们都知道计算机学院是HDU最大的部门。但是,也许你不知道计算机学院曾在2002年被分成计算机学院和软件学院。拆分绝对是HDU中的一件大事!与此同时,这也是一件麻烦事。所有设施必须减半。首先,评估所有设施,如果两个设施具有相同的价值,则认为它们是相同的。假设有N(0 <N <1000)种设施(不同的值,不同的种类)。输入输入包含多个测试用例。每个测试用例以数字N开始...原创 2019-08-10 14:36:40 · 472 阅读 · 0 评论 -
动态规划—(背包问题)
动态规划与其他算法比较,大大减少了计算量,丰富了计算的结果,最适合解决最优解问题。今天讲的是背包问题。1、0-1背包:简介:有n件物品,总空间是w,前i件的容量是w[i],前i件的价值是v[i],那么所获取的最大容量是dp[w].代码如下:#include<stdio.h>#include<string.h>int f[201000];int w[210000...原创 2019-08-09 18:12:55 · 327 阅读 · 0 评论 -
POJ—2236 Wireless Network
问题:An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wireless network with the lap computers, but an unexpected aftershock attacked, all computers in t...原创 2019-08-08 08:56:54 · 157 阅读 · 0 评论