自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HJ

业余算法爱好者

  • 博客(44)
  • 资源 (5)
  • 收藏
  • 关注

原创 hdu 4801 Pocket Cube(dfs+模拟)

http://acm.hdu.edu.cn/showproblem.php?pid=4801题目大意: 现在有一个2*2*2的魔方,给出指定步数,问你在指定步数之内最多能还原几个面?解题思路: dfs搜6次,每次模拟7次,分别是前,左,上(各顺时针逆时针90度)#include<iostream> using namespace std;struct node{ int s[25];

2017-10-30 21:13:11 366

原创 hdu 4800 Josephina and RPG (概率dp)

http://acm.hdu.edu.cn/showproblem.php?pid=4800题意: 给定C(m,3)支队伍之间对战获胜的概率,再给定一个序列存放队伍的编号,每次获胜之后可以选择和当前战胜的对手换队伍或者不换。求挑战胜利的最大概率。解题思路: 想了好久,先想着用dfs,但最后不管怎么弄都超时。然后想到记忆化搜索,于是就想到了要往dp方面靠靠。设dp[i][j]表示战胜第i支队伍时,

2017-10-30 21:09:01 427 1

原创 hdu 4791 Alice's Print Service(二分)

http://acm.hdu.edu.cn/showproblem.php?pid=4791题目大意: 打印张数越多价格区间越优惠(也可能相同)。问给定张数为n的时候,打印多少张最省钱。问最后花多少钱。解题思路: 逆向求出每个区间的总价格,二分查找最后花钱最少的区间。#include<cstdio>#include<cstring>#include<algorithm>#define

2017-10-30 21:05:29 464

原创 POJ 1679 The Unique MST(判断MST的唯一性)

http://poj.org/problem?id=1679题目大意: 就是判断这个图中是否存在多个MST解题思路: 实际上就是求次小生成树是否等于最小生成树。如何求最小生成树?找出MST中权值最大的边,用MST以外的任何一条边进行替换,重新求一次最小生成树,判断前后值是否相等。如果相等,代表MST不唯一,否则MST唯一。Prim 版:#include<iostream>#include<cs

2017-10-30 15:35:53 506

原创 hdu 5137 How Many Maos Does the Guanxi Worth(Dijkstra)

http://acm.hdu.edu.cn/showproblem.php?pid=5137题目大意: 给出一个无向无环图,现在你有一个机会炸掉n个点其中的任意一个,只要炸掉这个点,那么这个点与其他但凡有连接的路径都会删除,问炸除一个点之后从 1–>n如果还有路径,那个最短路径是多少,如果没有路径,输出inf。解题思路: 枚举每一个点,进行删点操作,之后进行求最短路,找出那个最短路最大值的那个点

2017-10-27 19:51:52 372

原创 hdu 5135 Little Zu Chongzhi's Triangles(贪心+求三角形面积)

http://acm.hdu.edu.cn/showproblem.php?pid=5135题目大意: 给出n根木棍,要求不能拼接不能折断,选择任意根组成三角形,最后求能组成的所有三角形面积的最大值。解题思路: 将所有木棍从大到小排序,之后每次选择邻近的三根木棍,如果不能组成三角形,把最长的那根舍弃,依次贪心即可。#include<iostream>#include<cstdio>#incl

2017-10-27 19:37:32 497 1

原创 hdu 5131 Song Jiang's rank list(排序)

http://acm.hdu.edu.cn/showproblem.php?pid=5131题目意思: 给出水浒传里面一些人物的英文名字和排名,按照一定要求给他们排序即可#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;const int maxn=205;

2017-10-27 19:27:38 388

原创 hdu 5971 Wrestling Match(二分图判断)

http://acm.hdu.edu.cn/showproblem.php?pid=5971题目大意: 有n个人,一些人会进行比赛,每次比赛的两个人都是分别属于X和Y不同阵营的人,另外会告诉你哪些人属于X阵营,哪些人属于Y阵营,问你最后能不能把所有的n个人都归好类别?解题思路: 二分图判断,每次比赛,就看做X和Y的一根连线。#include<iostream>#include<vector>

2017-10-27 14:04:06 360

原创 hdu 5974 A Simple Math Problem(欧几里得)

http://acm.hdu.edu.cn/showproblem.php?pid=5974题目大意: x+y=a,lcm(x,y)=b。给出a和b,如果x和y有解,求出x和y。解题思路:gcd(x,y) * k1 = xgcd(x,y) * k2 = y=> gcd(x,y) * k1 * k2 = b=> gcd(x,y) * k1 + gcd(x,y) * k2 = a=> k1 *

2017-10-27 13:55:33 364

原创 hdu 5980 Find Small A(二进制位运算)

http://acm.hdu.edu.cn/showproblem.php?pid=5980题目大意: 给出n个数,判断每个数化成二进制每四位中有多少个“a”?解题思路: 把每个数循环整除256,判断多少个余数为97即可。#include<iostream>using namespace std;int main(){ int n; while(cin>>n) {

2017-10-27 13:36:36 369

原创 hdu 5979 Convex(正弦定理求三角形面积)

http://acm.hdu.edu.cn/showproblem.php?pid=5979题目大意: 给出n多边形的中心圆角大小,求这个多边形的面积。解题思路: 划分成n个三角形,每个三角形用正弦定理求面积累加即可。#include<iostream>#include<cstdio>#include<cmath>using namespace std;#define PI acos(-

2017-10-27 13:32:43 990

原创 hdu 5978 To begin or not to begin(概率期望)

http://acm.hdu.edu.cn/showproblem.php?pid=5978题目大意: 有k个黑球和一个红球,同时放在一个箱子里,A和B两个人轮流取出并且不放回。问第一个人先取,跟第二个人能摸中红球的概率期望大小比较。解题思路: 假如k为奇数,那么k+1就为偶数,两个人能摸中红球的概率期望相等; 假如k为偶数,那么k+1就为奇数,第一个人先取,能多取一次,能摸中红球的概率期望就

2017-10-27 13:28:21 293

原创 UVALive 7261 Xiongnu's Land(二分)

https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=5273题目大意 王上有一块土地,上面有一些封地,现在需要平行y轴纵向切一刀,左边的给霍去病,右边的给卫青。第一个是左边的封地与右边的封地之差要最小。第二个是在第一个条件的前提下,左边的土地不能

2017-10-27 13:19:33 327

原创 UVALive 7270 Osu! Master(简单水题)

https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=5282题目大意: 如果前面一个字符为“B”或者“C”,后面就会接一个正整数x,x值从1连续增长到k的序列视为一个pattern,单独的一个S视为一个pattern。 统计序列中pattern

2017-10-27 13:12:37 360

原创 UVALive 7267 Mysterious Antiques in Sackler Museum(dfs)

https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=5279题目大意: 给出四个矩形的长和宽,要你判断任意选取其中的三个能不能组成一个新的矩形。简单dfs搜一下就行了,注意要判断两种情况(如果是两个一起判断就是四种)。#include<iostr

2017-10-27 13:07:25 403 2

原创 hdu 3359 Kind of a Blur(高斯消元)

XOR is a kind of bit operator, we define that as follow: for two binary base number A and B, let C=A XOR B, then for each bit of C, we can get its value by check the digit of corresponding position in

2017-10-19 21:49:06 434

原创 hdu 1827 Summer Holiday(强连通分量+缩点)

Problem Description To see a World in a Grain of Sand And a Heaven in a Wild Flower, Hold Infinity in the palm of your hand And Eternity in an hour. —— William Blake听说lcy帮大家预定了新马

2017-10-19 21:43:06 298

原创 hdu 2767 Proving Equivalences(强连通分量+缩点)

Problem Description Consider the following exercise, found in a generic linear algebra textbook.Let A be an n × n matrix. Prove that the following statements are equivalent:A is invertible.Ax = b ha

2017-10-19 21:36:28 343

原创 hdu 1269 迷宫城堡(强连通分量)

Problem Description 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N<=10000)和M条通道(M<=100000),每个通道都是单向的,就是说若称某通道连通了A房间和B房间,只说明可以通过这个通道由A房间到达B房间,但并不说明通过它可以由B房间到达A房间。Gardon需要请你写个程序确认一下是否任意两个房间都是相互连通的,即:对于任意的i和j,至少存在一

2017-10-19 21:33:38 278

原创 hdu 1269 The King’s Problem(强连通分量+缩点+最小路径覆盖)

Problem Description In the Kingdom of Silence, the king has a new problem. There are N cities in the kingdom and there are M directional roads between the cities. That means that if there is a road fr

2017-10-19 21:30:21 581

原创 hdu 5983 Pocket Cube (模拟)

http://acm.split.hdu.edu.cn/showproblem.php?pid=5983题目大意 给出一个2*2*2的魔方,判断是否能够两步还原。解题思路: 总共有前后左右上下六个方向,每次判断旋转90度或者180度,判断是否还原。另外还需要判断刚开始的时候是否已经还原。(因为还可以两步走回来)按照题目解释的来,一步一步模拟就行了。(不要粗心,不然很难调试)#include<io

2017-10-16 21:32:48 433

原创 hdu 3478 Catch(判断奇数环)

http://acm.split.hdu.edu.cn/showproblem.php?pid=3478题目大意: 判断任意时刻,任意一个点是否都可以到达。解题思路:要让从起点到任何点,那么就要判断是否存在奇数环,如果不存在奇数环,那么偶数步数的才能到达的点就不符合题目要求,即无解。因此就可以转变成判断是否存在奇数环,而如果所有点组成一个奇数环,那么所有点组成的图就是一个二分图,也就是判断这个图是

2017-10-16 21:25:33 940

原创 hdu 4751 Divide Groups(图的二染色)

http://acm.split.hdu.edu.cn/showproblem.php?pid=4751题目大意: 判断是否为二分图?解题思路: 用DFS或者BFS二染色的方法判断即可DFS递归写法:#include<iostream>#include<cstring>#include<cstdio>using namespace std;const int maxn=105;int

2017-10-16 21:21:53 410

原创 hdu 1853 Cyclic Tour(KM 最小权值匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1853题目大意: n个城市里有m条单向路径,每条路径上有一个权值,每个城市都属于且仅属于某一个环,Tom计划环游这n个城市,并且每个城市都只能经过一次。问最后环游了n个城市后最小的权值和是多少。解题思路:可以发现,每个点的入度和出度都是1。 如果每个点都拆成入点和出点,对于点u,可以拆成u和u’, u

2017-10-16 21:19:23 348

原创 hdu 1532 Drainage Ditches(最大流 三种模板:EK、Dinic、isap)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1532题目大意: 给出边数N,点数M,每条边都是单向的,问从1点到M的最大流是多少。最大流的三种模板EK,Dinic和isap第一种EK#include<iostream>#include<cstdio>#include<cstring>#include<vector>#include<que

2017-10-14 17:45:28 412

原创 POJ 3041 Asteroids(二分匹配)

http://poj.org/problem?id=3041题目大意: 给一个N*N的矩阵,有些格子有障碍,要求我们消除这些障碍,问每次消除一行或一列的障碍,最少要几次。思路: 将每行x看成一个X结点,每列Y看成一个Y结点,障碍的坐标x,y看成X到Y的一条边。构建出图后,就变成了找最少的点,使得这些点与所有的边相邻,即最小点覆盖问题。最小点覆盖=最大匹配#include<iostream>#i

2017-10-14 14:42:34 311

原创 hdu 1533 Going Home(KM 最小权值匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1533题意: 给一个n*m的地图,’m’表示人,’H’表示房子,求所有人都回到房子所走的距离之和的最小值(距离为曼哈顿距离)。思路: 二分图最大权匹配模型,将每个人向房子连一条边,边权为曼哈顿距离的相反数(由于是求最小,所以先取反后求最大,最后再取反回来即可),然后用KM算法跑一遍然后取反就是答案。

2017-10-14 14:25:38 276

原创 hdu 2255 奔小康赚大钱(KM完美匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2255KM的裸题。简单描述一下KM算法的思想:1)首先选择顶点数较少的为X部,初始的时候对X部的每一个顶点设置顶标,顶标的值为该点关联的最大边的权值,Y部的顶点坐标为0.2)对于X部中的每个顶点,在相等子图中利用匈牙利算法找一条增广路径,如果没有找到,则修改顶标,扩大相等子图,继续找增广路径。当每个点都

2017-10-14 14:20:13 357

原创 hdu 1151 Air Raid (二分匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1151题目大意: 在一个城镇,有m个路口,和n条路,这些路都是单向的,而且路不会形成环,现在要弄一些伞兵去巡查这个城镇,伞兵只能沿着路的方向走,问最少需要多少伞兵才能把所有的路口搜一遍。这个题目就转换成求解有向无环图的最小路径覆盖问题了。思路: 有向无环图的最小路径覆盖=该图的顶点数-该图的最大匹配

2017-10-14 13:13:40 337

原创 hdu 1150 Machine Schedule(二分匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1150题目大意: 给你两台机器A和B,A机器有n种模式,B机器有m种模式,初始时都是0,现在给你k个任务,每个任务可以由机器A的x模式完成或者机器B的y模式完成,而每次改变机器的模式都要重启一次,问你最少的重启次数使得完成所有任务!思路: 在这个二分图中找出最少的点使得所有的边都至少有一个端点被选

2017-10-14 13:10:26 303

原创 hdu 1068 Girls and Boys(二分匹配)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1068题意: 有n个人,一些人认识另外一些人,选取一个集合,使得集合里的每个人都互相不认识,求该集合中人的最大个数。思路: 这题就是求最大独立集,但是这并不是两个集合,而是一个集合,所以求出最大匹配后需要/2,然后代公式:最大独立集=N-最大匹配。用匈牙利算法求最大匹配。#inclu

2017-10-14 13:05:28 308

原创 hdu 2807 The Shortest Path(矩阵计算+Floyd)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2224题目大意: 城市一共有n个地点,每个地点是一个m*m的矩阵,当a*b=c时,说明a可以到达c,是单向边解题思路: 矩阵计算,并且判断a与c是否连接,然后求出最短路即可。#include<iostream>#include<cstring>#include<cstdio>#define I

2017-10-11 19:25:35 496

原创 hdu 2224 The shortest path(双调欧几里得旅行商问题)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2224旅行商问题描述:给出平面上的n个点,确定一条连接各点的最短闭合旅程。双调旅行商问题:给出平面上的n个点,从 1 号点出发走到最右端的点 N ,再返回 1 ,要求中途不能重复走某个点而且必须把所有点全走一遍,求最小的总路径。旅行商问题求解 http://blog.csdn.net/xiajun070

2017-10-11 19:18:23 462

原创 hdu 3339 In Action (Dijkstra+01背包)

http://acm.split.hdu.edu.cn/showproblem.php?pid=3339题目大意: 给出n个发电站,m条路,每条路都要消耗一定的油,每个发电站都有一定的能量,要注意,每个发电站必须停一辆坦克才能控制这个发电站,只有控制的总能量超过一半能使其瘫痪。问使其瘫痪的最少要消耗多少油?解题思路: 分两步,第一步计算出从0出发到n个点每个点的最短路,第二部从n个中以能量为体积

2017-10-11 19:12:46 262

原创 hdu 2923 Einbahnstrasse(Floyd+map)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2923题目大意: 给出城市数,破车数和道路数,然后跟着m条路线,箭头为指向,数字为花费。求出从公司派出车,到每个城市回收破车的最小花费,要注意每辆车只能回收一辆破车。用Floyd求出 d[u][v] 的花费。注意有重边!#include<iostream>#include<cstdio>#incl

2017-10-10 21:37:11 271

原创 hdu 2680 Choose the best route(SPFA或者Dijkstra)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2680把0看成一个大源点。走一遍最短路就行了。Dijkstra优先队列优化#include<iostream>#include<cstring>#include<cstdio> #include<queue>#include<vector>#define INF 0x3f3f3f3fusin

2017-10-10 21:16:23 244

原创 hdu 1546 Idiomatic Phrases Game (SPFA或者Dijkstra)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1546题目大意: 给出n个“成语”, 这写成语至少由3个“汉字”组成,所谓的“汉字”,是指4个连续的16进制数字(1~9, A~F)。 以第一个成语作为起点,最后一个作为终点, 需要找出一个序列,这个序列的前一个成语的最后一个“汉字”与后一个成语的第一个“汉字”是相同的,求最少花费时间。Dijkstr

2017-10-10 17:52:43 353

原创 hdu 1317 XYZZY(floyd+SPFA)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1317floyd 用于判断是否能从u到达v 即求出g[][]数值 ,其中松弛条件应该写成 g[i][j]=g[i][j]||(g[i][k]&&g[k][j]);SPFA用于松弛求出d[]数组 ,其中判断条件应该有三个if(map[u][i]&&d[u]+e[i]>d[i]&&d[u]+e[i]>0)

2017-10-10 15:23:46 323

原创 hdu 2112 HDU Today(SPFA+map)

http://acm.split.hdu.edu.cn/showproblem.php?pid=2112求最短路,SPFA+map存储。#include<iostream>#include<cstdio>#include<cstring>#include<queue> #include<map>#define INF 0x3f3f3f3fusing namespace std;cons

2017-10-10 14:42:59 311

原创 hdu 1217 Arbitrage(判断负环+map)

http://acm.split.hdu.edu.cn/showproblem.php?pid=1217判断是否出现负环?用map存储,floyd或者SPFA都可。SPFA版#include<iostream>#include<queue>#include<cstring> #include<cstdio>#include<map>using namespace std;const in

2017-10-10 14:41:06 298

Fabric_源码分析.pdf

Hyperledger Fabric源码1.0版本的流程全解析,包括链码启动、Peer启动、Peer与链码交互、Endorser背书流程、Orderer启动、Orderer与Kafka集群交互等等内容

2020-05-08

字符串基本知识点讲解

对KMP算法的详细讲解(私密材料),以及Manacher算法的经典讲述。

2018-02-09

基础数据结构总结

基础数据结构的知识点的讲解、总结,包括栈、队列、二叉树、图等。

2018-02-09

动态规划总结

ACM中基础动态规划的各类知识点讲述、总结。其中包括基础DP、背包问题、数位DP、概率DP等。

2018-02-09

线段树矩形面积并讲解

ACM中对于矩形面积并用线段树+离散化+ 扫描线一类问题求解

2018-02-09

空空如也

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

TA关注的人

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