自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Happig的博客

我不够强大,但我足够努力

  • 博客(45)
  • 资源 (7)
  • 收藏
  • 关注

原创 ICPC North Central NA Contest 2017 计蒜客重现 解(补)题报告

前言不知不觉又到了周六训练赛,时间过得真快。手机前段时间被我不小心摔坏了,没手机玩的第十天, 无奈只能学习了 ,想它。题目还是要做的,题解还是要写的,CF还是得抽时间打的,所以说手机坏了貌似是好事。突然发现今天是2.29,还是想纪念一下的,如今大二,四年后的今天再看到这篇文章时,我会在哪?会是什么身份?会变成什么样子?一切都是未知数,所以,珍惜当下,好好学习,努力做题,认真比赛,才是我应该做的!...

2020-02-29 23:24:25 576

原创 ICPC North Central NA Contest 2017 - Is-A? Has-A? Who Knowz-A? (Floyd求传递闭包)

题目链接Two familiar concepts in object oriented programming are the is-a and has-a relationships. Given two classes A and B, we say that A is-a B if A is a subclass of B; we say A has-a B if one of the ...

2020-02-29 22:39:16 266

原创 那些年我们一起踩过的坑——读取字符(串)篇

前言写了这么久C/C++,自以为对各种输入输出都了如指掌,直到再次做题才明白自己仍有很多地方不太了解。尤其是读取字符时经常“炸锅”,最近碰到不少控制台秒关,得不到正确的字符/字符串等现象。如今深知不能再深受其害,予攥此文以记之输入缓冲区所谓键盘输入缓冲区,就是我们在输入的时候,程序并不会根据我们每次输入读取相应的内容,而是先将我们输入的内容全部存储到一个缓冲队列中,包括空格回车。但是回车会作...

2020-02-29 11:45:04 585

原创 UCF Local Programming Contest 2015 计蒜客重现 解(补)题报告

前言比赛时状态不是很好,差不多七道可以做的题,但是总是被一些低级失误卡很长时间(比如某处double错写成int),还有就是总会被能做出来的题目卡主,然后后面的就做不下去。所以基本功好,才能披荆斩棘一道一道AC。总的来说是自己编码水平亟待提高,有几道题超出知识范围没有补。A - Find the Twins题目链接签到题#include <iostream>using na...

2020-02-28 20:59:39 1520

原创 哈密顿回路 竞赛图 构造哈密顿回路(待更新)

哈密顿回路1.哈密顿回路图G的一个回路,该回路除了经过初始结点两次以外,恰好经过每个结点一次,则称此回路为哈密顿回路。哈密顿回路中每个结点都为偶结点且入度和出度均为12.哈密顿路径一条路径上每个节点仅经过一次的路径称为哈密顿路径3.哈密顿通路含有图G所有节点的哈密顿路径称为哈密顿通路4.哈密顿图含有哈密顿回路的图竞赛图简介图G是一个有向图,其中每对不同的顶点通过单个有向边连接...

2020-02-28 20:05:43 2027

原创 UCF Local Programming Contest 2015 I - Longest Path(竞赛图+哈密顿路径)

You are visiting a lovely garden, with several points of interest. Every pair of points of interest have a single, one way path (edge) connecting them. (The paths are one way so that guests don’t ge...

2020-02-28 20:02:05 513

原创 STL之list

listlist实际上是一个双向链表结构的线性容器,它支持在任意位置插入和删除,但是不支持任意位置的直接访问,只能通过头部迭代器一个个查找构造函数list<T> List; //构造一个空的listlist<T> List(n,x) //构造一个大小为n,且全部元素都初始化为xlist<T> a=b; //构造一个和b一样的list&l...

2020-02-28 19:27:10 96

原创 Codeforces Round #624 (Div. 3) 解(补)题报告

前言由于我熬夜的时候解题效率很差,因此在决定开始打CF之后,尽量在比赛后的第二天拉一套题在VJ上面做,就当成练习题做,因为比赛的话自己水平还比较低,先多做Div3,这个比赛是我第一次做div3,做了三道,补了两道(比较菜的那种)E题待补A - Add Odd or Subtract Even (签到)You are given two positive integers a and b.In...

2020-02-27 19:22:44 372 1

原创 Codeforces Round #624 (Div. 3) F - Moving Points(树状数组+去重离散化)

题目链接There are n points on a coordinate axis OX. The i-th point is located at the integer point xi and has a speed vi. It is guaranteed that no two points occupy the same coordinate. All n points move...

2020-02-27 17:49:53 215

原创 Codeforces Round #624 (Div. 3) D - Three Integers(枚举技巧)

题目链接In one move, you can add +1 or −1 to any of these integers (i.e. increase or decrease any number by one). You can perform such operation any (possibly, zero) number of times, you can even perform...

2020-02-27 16:47:07 198

原创 UVa1374 Power Calculus (IDA*)

题目链接Starting with x and repeatedly multiplying by x, we can compute x31 with thirty multiplications: The operation of squaring can appreciably shorten the sequence of multiplications. The following i...

2020-02-25 17:31:46 179

原创 CTU Open Contest 2019 计蒜客重现补题报告

个人总结寒假过完的第一场比赛,总是有很多问题。主要有以下两点:一是寒假做题有点依赖翻译,看不下去很长的英文题面,导致这次比赛的一些题目看很长时间也没看懂。二是发现了自己的做题量仍然很少,很多题目缺乏练习导致即使知道这些知识点,会写会用,但是总是倒在一些坑点或者数据范围上。比如A题卡了我三个小时,红了十几发,最后竟然是组合数的杨辉三角做法,数组没开long long导致溢出的。我以前只注意杨辉三角...

2020-02-25 12:52:00 366

原创 IDA*——迭代加深搜索 (UVa11212)

IDA*迭代加深搜索:从小到大枚举搜索深度上限maxd,每次执行只考虑深度不超过maxd的节点。只要解的深度有限,能够快速找到最优解其实设置深度上限就是为了剪枝,有的情况下每种情况都有上万个分支,最差情况下要得到最优解会非常慢,但是这些分支又是不可避免的,所以我们可以通过限制向下迭代的层数,逐渐放宽搜索区域知道找到结果那么IDA*问题的关键就是如何限制迭代的层数,换种说法是至少还要多少步才能...

2020-02-24 17:36:03 275

原创 POJ1511 Invitation Cards (最短路+正反向建图)

In the age of television, not many people attend theater performances. Antique Comedians of Malidinesia are aware of this fact. They want to propagate theater and, most of all, Antique Comedies. They ...

2020-02-23 17:28:21 221

原创 蓝桥杯训练 k进制数的数位交换问题

问题进入k进制数的数位交换问题,就是给出一个k进制的数,求出其中任意两个数位交换后的大小我们先以十进制数123为例,假如交换第一位和第二位变成213。那么这两个数之间存在什么关系呢,我们注意到百位上本来是1,变成了2之后原数就要增加(2-1)*100;十位上本来是2,变成1之后原数就要增加(1-2)*10。那么再考虑交换前左边的数小于右边的数,就变成了减的较多。总之,拿每一位变化后的数减去变化...

2020-02-23 16:08:30 325

原创 UVa129 Krypton Factor(回溯法)

题目链接You have been employed by the organisers of a Super Krypton Factor Contest in which contestants have very high mental and physical abilities. In one section of the contest the contestants are tes...

2020-02-20 17:20:09 182

原创 回溯法——八皇后问题

八皇后问题在一个8×8的棋盘上放置8个皇后,使得他们不相互攻击。每个皇后的攻击范围是同行同列和同对角线,求出所有解的个数首先简化问题,如果符合要求放满8个皇后,那么肯定保证每一行和每一列有且仅有一个皇后。那么显然问题就变成了如何在一行或者一列放满8皇后。接着就可以转化为求符合要求的8的全排列,那么求全排列我们显然可以用dfs来解决既然是逐行放置的,那么皇后肯定不会横向攻击,因此只需要检查...

2020-02-19 23:11:21 788

原创 枚举子集

增量构造法此方法适合求包含n个元素{1-n}的所有子集思路:每一次选出一个元素放到集合中,函数开头遍历当前集合,后面每次从当前最小值向下递归构造子集int a[maxn],ans[maxn];int n;void print_subset(int cur){ //cur初始输入1 for(int i=1;i<cur;i++) printf("%d%c",ans[i],i=...

2020-02-19 17:54:00 440

原创 UVa725 Division (暴力枚举)

题目链接Write a program that finds and displays all pairs of 5-digit numbers that between them use the digits 0 through 9 once each, such that the first number divided by the second is equal to an intege...

2020-02-18 18:12:36 186

原创 UVa12118 Inspector's Dilemma (欧拉通路)

题目链接In a country, there are a number of cities. Each pair of city is connected by a highway, bi-directional of course. A road-inspector’s task is to travel through the highways (in either direction) ...

2020-02-18 15:51:41 243 1

原创 UVa10129 Play on Words (欧拉通路)

题目链接Some of the secret doors contain a very interesting word puzzle. The team of archaeologists has to solve it to open that doors. Because there is no other way to open the doors, the puzzle is very...

2020-02-17 22:35:15 239

原创 欧拉回路

欧拉通路定义从图G一个节点出发走完全部的边,且这条路上的每个边恰好只经过一次。这样的路称为欧拉通路判断是否存在欧拉通路无向图如果一个图G是连通图,G中仅有两个节点的度数是奇数,其他节点的度数均是偶数,那么图G存在欧拉通路有向图G为有向图,G中仅有两个节点特殊节点,一个节点入度比出度大1(通路的终点),另外一个节点是出度比入度大1(通路的起点),其余节点入度等于出度,那么图G中存在欧...

2020-02-17 21:30:28 337

原创 UVa10410 Tree Reconstruction (DFS+BFS还原树)

题目链接You have just finished a compiler design homework question where you had to find the parse tree of an expression. Unfortunately you left your assignment in the library, but luckily your friend pi...

2020-02-16 20:33:50 291

原创 UVa12166 Equilibrium Mobile(思维+dfs建树)

题目链接A mobile is a type of kinetic sculpture constructed to take advantage of the principle of equilibrium. It consists of a number of rods, from which weighted objects or further rods hang. The objec...

2020-02-16 15:08:10 168

原创 UVa1600 Patrol Robot (BFS求最短路进阶)

题目链接A robot has to patrol around a rectangular area which is in a form of m × n grid (m rows and n columns). The rows are labeled from 1 to m. The columns are labeled from 1 to n. A cell (i, j) denot...

2020-02-15 18:30:45 178

原创 UVa 439 Knight Moves (BFS求最短路)

题目链接A friend of you is doing research on the Traveling Knight Problem (TKP) where you are to find the shortest closed tour of knight moves that visits each square of a given set of n squares on a che...

2020-02-14 22:16:46 226

原创 UVa536 Tree Recovery (二叉树前序中序求后序)

题目链接Little Valentine liked playing with binary trees very much. Her favorite game was constructing randomly looking binary trees with capital letters in the nodes.This is an example of one of her cr...

2020-02-14 17:39:50 526

原创 UVa673 Parentheses Balance (简单栈应用)

题目链接You are given a string consisting of parentheses () and []. A string of this type is said to be correct:(a) if it is the empty string(b) if A and B are correct, AB is correct,© if A is correct...

2020-02-14 16:38:32 99

原创 UVa1599 Ideal Path (双向BFS求最短路+打印路径)

题目链接New labyrinth attraction is open in New Lostland amusement park. The labyrinth consists of n rooms connected by m passages. Each passage is colored into some color ci. Visitors of the labyrinth a...

2020-02-14 13:36:13 245

原创 离散化及两种主要实现

离散化所谓离散化就是当我们需要存一定数量的数组时,数组开不了那么大,但是数字的种数不多,故离散化就是改变了数据数量的相对大小去重离散化给定一个包含大量重复元素数组,而我们用到其中的每一个数即可,去重显然是更好的选择unique函数头文件:#include <algorithm>注意:使用前一定要先将无序的列表排序,使重复的元素相邻原理:该函数的作用是“去除”容器或者数...

2020-02-12 21:02:53 449 5

原创 Floyd算法及常见应用总结

Floyd时间复杂度O(n3),空间复杂度O(V2),应用于求多源最短路(可以含有负权但不能含有负环)首先我们用邻接矩阵表示图,如果Vi和Vj有点可到达,那么更新G[i][j],否则G[i][j]为无穷大(一般设为0x3f3f3f3f,这样两个无穷大相加也不会溢出)算法思想:实际上是动态规划的思想,对于任何两个节点i和j而言,i到j的最短距离不外乎存在i与j之间经过k和不经过k两种情况,所以...

2020-02-10 22:23:18 1643

原创 全排列及几种实现(DFS,STL)

全排列从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列公式:全排列数f(n)=n!(定义0!=1)例如1,2,3的全排列为共有3!=6种,按字典序从小到大为:1,2,31,3,22,1,32,3,13,1,23,2,1DFSDFS求全排列的思想是:把n个数建立成一个含有n个节点的无向图...

2020-02-09 18:49:03 413

原创 最短路之Bellman-Ford & SPFA

Bellman-Ford时间复杂度O(V*E),用于求带权图单源最短路(可含负权,可判断是否有回路)Bellman-Ford和Dijkstra类似,都是以边的松弛操作为基础,回顾一下松弛操作:对于边(k,j),d[j] = min(d[j],d[k]+w(k,j)),即如果加上这条边那么更新起点到j的最短路为二者中最小的那个。但是Dijkstra属于贪心算法,每次都找剩余不确定的点中的最短路,...

2020-02-09 14:09:51 716

原创 最短路之Dijkstra

简介Dijkstra算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(BFS思想),直到扩展到终点为止Dijkstra不能处理带负权和带有回路的图算法思想设起点为u,引入两个集合S、U,S集合包含已求出的最短路径的点,U集合记录未求出最短路径的点以及到起点的距离初始化两个集合,S集合初始时只有起点,U集合初始时为起点到其他节点...

2020-02-08 16:20:56 1330

原创 HDU4857 逃生(拓扑排序经典好题)

题目链接题目大意:n个人排成一队,除了必要的约束条件:输入a b代表a必须排在b的前面。满足m个约束条件后,还有一个对所有点来说的关系就是1号最富,2号第二富,以此类推。所以要让1号尽量靠前,如果此时还有多种情况,就再让2号尽量靠前,如果还有多种情况,就让3号尽量靠前,以此类推。输出该序列明显是拓扑排序的裸题,如果用最小堆的优先队列,跑一遍拓扑排序便过了样例。刚开始没注意m很大,使用了cin...

2020-02-07 15:42:44 433

原创 拓扑排序及两种实现(BFS,DFS)

定义对一个有向无环图 (Directed Acyclic Graph 简称 DAG) G 进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点 u 和 v,若边<u,v>∈ E(G),则 u 在线性序列中出现在 v 之前。通常,这样的线性序列称为满足拓扑次序 (Topological Order) 的序列,简称拓扑序列由某个集合上的一个偏序得到该集合上的一个全序,这...

2020-02-06 16:53:26 2429

原创 图论基础

图的定义图G是一个有序二元组(V,E),其中V称为顶点集(Vertices Set),E称为边集(Edges set),E与V不相交。它们也可写成V(G)和E(G)。E的元素都是二元组,代表一条边的两个端点,用(x,y)表示,其中x,y∈V图G是一个三元组(V,E,I),其中V称为顶集,E称为边集,I称为关联函数。I将E中的每一个元素映射到 V×V。如果e被映射到(u,v),那么称边e...

2020-02-05 22:06:02 690

原创 图的存储——链式前向星

前向星前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序,并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了以下图为例构造前向星:len[i]记录所有以i为起点的边在数组中的存储长度head[i]记录以i为起点的边集在数组中的第一个存储位置利用前向星,我们可以O(len[i])的时间找到以i为起...

2020-02-05 20:42:32 423

原创 POJ2352 Stars & POJ2481 Cows 树状数组的应用

POJ2352题目链接1.题目大意是输入一堆坐标,然后y坐标是排好序的,定义了一个“高度”,就是某个星星左下角(包括正左和正下)的星星个数,然后按“高度”有小到大输出每个“高度”的星星个数2.首先看到这题目觉得很玄乎,似乎看起来挺简单但是无可下手,写了个暴力,但转身一想肯定超时。但是自己似乎掌握的技能里边没有能直接应用到这道题的。去网上看发现都是树状数组的解法,线段树也很少。搞懂树状数组后,...

2020-02-04 22:08:01 215

原创 数论——整除和同余

整除定义如果 ∃k∈Z , 使得b=a*k;或者说 b%a==0。那么称a整除b(b被a整除) , 记作 a|ba | b可以逆时针旋转90°,性质① 若 a | b 且 b | c,那么有 a | c② 若 b | a 且 c | a,且b和c互质,则 (b*c) | a③ a | b 且 a | c ⇔ ∀x,y∈Z , a | (bx + cy)④ 若a∣b 且 c∣d,...

2020-02-04 17:24:06 619

stopwords.txt

作中文分词时的停用词,几个资源整合而来,较为全面

2021-12-12

数据结构实验——赫夫曼树相关

本人本科期间学习数据结构写的实验,内容如下 1、输入一段报文,例如: CAST CAST SAT AT A TASA 统计字符集合 { C, A, S, T },以及各个字符出现的频度(次数) W={ 2, 7, 4, 5 }。 2、建赫夫曼树,并输出各个字符的赫夫曼编码 3、输入编码01100……,能准确翻译成报文 4、要求有菜单。

2020-05-13

数据结构实验——二叉树相关操作

本人本科期间数据结构二叉树的实验 1、建立二叉树的存储结构 2、先序、中序、后序遍历二叉树(要求任选某一种用非递归算法完成) 3、查询二叉树中某个结点 4、统计二叉树中叶子结点的个数 5、求二叉树的深度 6、要求有菜单

2020-05-13

数据结构实验——字符串相关操作

本人本科学习期间数据结构的第三个实验 1、实现串赋值、串比较、求串长、串联接、求子串以及串匹配(KMP算法) 2、能利用上述实现的基本操作完成置换Replace (&S, T, V)以及从串中删除一段子串StrDelete(&S,pos,len)的操作

2020-05-13

数据结构实验——表达式求值

实现了前缀表达式求值,可执行功能为加减乘除和括号,数据类型是计算机双精度浮点数,支持多位整数和多位小数。实现思路是根据运算符的优先级,边输入边计算

2020-04-06

数据结构实验——链表实现XXX管理系统

数据结构的实验:实验题目是**管理系统。要求用带头结点的单链表实现具有插入、删除、显示、修改、保存至文件以及读入文件等功能的**管理系统。加至少3个结构成员,其中必须包含一个字符类或字符数组类,并使用排序等功能

2020-04-06

Base conversion.cpp

在完成课后作业过程中,无法辨认计算的进制转换是否正确,于是想写个程序去完成,既能节省时间,也能对一下答案。该简单代码支持2-16进制浮点数相互转换,最多精确到小数点后308位

2020-02-19

空空如也

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

TA关注的人

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