自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Feynman1999的博客

halt and catch fire

  • 博客(52)
  • 资源 (6)
  • 收藏
  • 关注

原创 读《ACM图灵奖》有感

引言 暑期闲暇之余阅读了由北京理工大学老师吴鹤龄、崔林编著的《ACM图灵奖》一书,颇有感想,特写此篇读书笔记以记录。说起图灵(Alan M. Turing),大家可能都很熟悉,就是那位被称为计算机科学之父,人工智能之父的英国数学家、逻辑学家。而本书的主题图灵奖(A.M. Turing Award,又译“杜林奖”)就是取自其名,专门奖励那些对计算机事业作出重要贡献的个人。由于图灵奖对获奖条件要求

2017-08-30 21:47:58 4055 1

原创 UVA 10934(经典DP,“扔水球”)

problem 思路题目大致意思就是:有n个水球,它们没有区别。现在从楼上扔它们,自然当楼层很高时,水球就会炸掉。而且水球炸是有一个临界点的,比如在3楼仍下去炸了,那在4,5,6…扔下去都会炸,1 2 就不会炸。 现在问,给你k个水球,最坏情况下至少需要扔多少次,就能确定这个临界点。如果只有一个水球,n层楼,那结果就是n次。因为只能从1楼开始试,最坏到n层。如果你第一次在中间试了,结果炸了,那就

2017-08-30 13:22:27 626 1

原创 17AHU排位赛3 F题 (多路归并求第k大和)

problem蕊蕊有n部喜欢的番剧,每部番剧里面有m个老婆,每个老婆都有一个颜值。现在蕊蕊想从每部番剧里挑出一个老婆,总共挑出n个老婆,组成后宫团,后宫团的颜值是里面n个老婆的颜值和。显然,蕊蕊一共可以组成m^n个后宫团,现在她想知道这m^n个后宫团中,颜值和第K大的总颜值是多少。若K>m^n,输出0。Input第一行三个整数n,m,k(1<=n<=1000,1<=m<=500,1<=k<=1000

2017-08-29 11:31:30 559

原创 17AHU排位赛3 G题 (n的k次方的因子数)

problem给定一个常数k,定义f(x)表示数字x^k的因子的个数。 求f(1)+f(2)+f(3)+…+f(n)的值。 最后结果对1e9+7取模。Input输入两个整数n,k(1<=n<=1000000,0<=k<=100)Output输出1个整数,表示f(1)+f(2)+…+f(n)的值。 最终结果对1e9+7取模。Input3 2Output7Limitation1s 256MBHin

2017-08-28 17:08:10 682

原创 17AHU排位赛2 F题(bitset优化)

problemInput第一行一个数n (1<=n<=100) 然后n行,每行两个数表示ai,bi (1<=ai,bi<=100)Output输出一行一个数表示答案。Input5 1 2 2 3 3 4 4 5 5 6Output26Limitation2s 256MB传送门传送门传送门传送门思路因为平方和最大只有1000000,所以可以开数组进行标记是否有,比如bool数组,然后dpf

2017-08-27 22:39:00 348

原创 17AHU排位赛3 D题 旋转吧!雪月花 ! (DFS序,线段树维护树上最值)

problem在一个平面上有n个齿轮,每个齿轮都有自己的初始半径rir_i 。有n-1对齿轮是互相嵌在一起的,即它们拥有相同的线速度。如果将n个齿轮当作n个点,将n-1条相嵌关系当作n-1条边,那么这些齿轮会组成一个树。即树上每条边连接的两个点代表的齿轮拥有相同的线速度。 现在有两种操作: ——操作1:将第x个齿轮的半径改成y ——操作2:如果给第x个齿轮一个角速度y,那么所有齿轮都旋转了起来

2017-08-25 19:38:56 355

原创 17AHU排位赛3 C题 (LCS)

problem博客是一个能非常方便记录自己学习历程的工具,而当你的博客内容非常多的时候,仅仅使用标签和分类已经不足以让你快速定位到要找的博文。 这时,就需要一个搜索引擎来让你更快定位到目标博文。 搜索引擎的基本原理就是计算每一个文章与搜索词的相似程度,按照相似程度从大到小显示出来。 经过复杂的代码计算,我们终于解决了字符编码、抛弃冗杂信息的工作,生成了一个每篇文章的摘要信息。现在给你一些关

2017-08-25 19:21:25 368

原创 17AHU排位赛3 A题 (逆康托展开)

problem输入两个整数n和k,询问1~n的所有排列中,按字典序升序排在第k位的排列是什么Input输入两个整数n,k(2<=n<=18,1<=k<=n!)Output输出n个整数,表示字典序排在第k位的那个排列。Input3 4Output2 3 1 Limitation1s 256MBHintn=3的时候,所有的排列按照字典序升序排列如下: [1,2,3] [1,3,2] [2,1,3]

2017-08-25 19:12:39 337

原创 17AHU排位赛2 E题(树上最大匹配,树形DP)

problem有一个n个节点n-1条边组成的树。 每个点看成一个人,连接u和v的边看成是“中意关系”,即u和v两个人都想和对方组队。每个人希望组队的对象有可能有多个。 一支队伍由且仅由两个人组成,并且如果u和v组队了,那么u、v将不能和其他人再组成一支队。 现在问你,这n个人最多能组成多少支队伍。(允许某些人组不了队)Input第一行输入一个整数n,m(1<=n<=200000) 接下来n-

2017-08-25 11:23:12 575

原创 17AHU排位赛2 A题(最小生成树、LCA维护树上路径)

problem有一个n个点m条边的连通无向图(无重边、无自环),点的编号为1~n。每条边都有一个正的边权,并且每条边边权互不相同(即数据保证该图的最小生成树唯一)。 如果只是求最小生成树,那么Ohyee觉得太简单了,于是他决定考考你。 对于每条边(u,v)都进行询问: ——如果该边在最小生成树上,那么输出“Ohyee”; ——如果该边不在最小生成树上,那么输出最小生成树上u,v两点路径中边权

2017-08-24 23:10:14 464

原创 17AHU排位赛1 E题(gcd>1序列,容斥)

problem对于一个长度为n的数组,我们可以随意取出它的一个子序列(子序列可以不连续),如果某个子序列中所有数的最大公约数>1,那么我们就称这个子序列是rbb序列。现在你需要回答长度为n的数组有多少个子序列是rbb序列。最终结果对1e9+7取模Input第一行两个整数n(1<=n<=200000)。 第二行n个整数ai(1<=ai<=1000000)Output输出该数组rbb序列的个数,结果对

2017-08-23 21:26:56 726

原创 WHU 1464(线段树减,除,区间求和)

problemN个数,M个操作,操作有三类:  1. D,A,B,C 区间[a,b]中 所有数除以C,计算机整除  2. M,A,B,C 区间[a,b]所有数减去C  3. S,A,B 区间[a,b]求和,输出结果思路注意 1.除法不能打lazy(计算机整除问题)而是更新到底,复杂度可以保证(log级别),因为很快降到0 2.注意减法与除法的融合代码示例#include<cst

2017-08-22 22:48:42 634

原创 17AHU排位赛1 D题(线段树除2)

problem有一个长度为n的数组a。现有m组操作。 操作1:将区间[l,r]内的所有数字都整除2。 操作2:输出区间[l,r]内所有数字的和。Input第一行输入两个整数n,m(1<=n<=200000,1<=m<=200000) 第二行n个整数,表示数组a (0<=a[i]<=10^9) 接下来m行,每行三个整数op,l,r ——若op=1,表示操作1,将[l,r]内所有数字整除2

2017-08-22 18:32:35 316

原创 17AHU排位赛1 C题(经典DP)

problem《snow halation》是μ’s的第二张单曲,其歌曲第二段伴奏结束后主唱穗乃果唱出“届けて”的同时,全场应援棒瞬间从白色转换成橙色。由于高度的整齐和效果的震撼,被称为“橙色的奇迹”,这也是“如果奇迹有颜色,那么一定是XX色”的最早来源。 现在,到了你来应援的时候了! 使用不同的应援形式有不同的效果(如里打、里跳、快挥、前挥、GT警报……),比如通常会GT警报后接着做里跳,这样

2017-08-22 16:13:53 382

原创 Poj 1655(树的重心、树形DP、经典)

problemConsider a tree T with N (1 <= N <= 20,000) nodes numbered 1…N. Deleting any node from the tree yields a forest: a collection of one or more trees. Define the balance of a node to be the size of

2017-08-21 11:59:30 744

原创 HDU 1561(树形DP)

problemACboy很喜欢玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中ACboy允许攻克M个城堡并获得里面的宝物。但由于地理位置原因,有些城堡不能直接攻克,要攻克这些城堡必须先攻克其他某一个特定的城堡。你能帮ACboy算出要获得尽量多的宝物应该攻克哪M个城堡吗? Input每个测试实例首先包括2个整数,N,M.(1 <= M <= N <= 200);在接下来的

2017-08-21 10:41:19 344

原创 树形DP简介

基本概念树形DP就是在“树”的数据结构上做动态规划,通过有限次地遍历树,记录相关信息,以求解问题。树形DP有根到叶(常见)和叶到根两个方向,就是将父亲结点的信息向下传递给子结点,或者从子结点向上传递信息给父亲结点。 因为树本身至少就有“子结构”性质(树和子树);也本身就具有递归性。所以在树上DP其实是其所当然的事,相比线性动态规划来讲,转移方程更直观,更易理解。例题 HDU 1520题意有n个

2017-08-20 23:25:54 777

原创 最长公共子序列(LCS)简介

基本概念一个数列 ,如果分别是两个或多个已知数列的子序列,且是所有符合此条件序列中最长的,则称为已知序列的最长公共子序列(The longest common subsequence)。 最长公共子序列中的元素在原序列中不一定是连续的。许多与数学、算法、随机矩阵理论(random matrix theory)、表示论相关的研究都会涉及最长公共子序列。求解思路比如说有两个随机数列,1 9 2 8 2

2017-08-20 20:05:11 828

原创 HDU 1950(LIS)

problem‘Oh no, they’ve done it again’, cries the chief designer at the Waferland chip factory. Once more the routing designers have screwed up completely, making the signals on the chip connecting the

2017-08-20 14:12:36 292

原创 最长上升子序列(LIS)简介

基本概念从给定的有序序列a[1],a[2],…,a[n]中选取b[1],b[2],…,b[m],其中b[1]< b[2] < b[m],且选出的子序列中在原序列的先后顺序不变。求一种令m最大的取法。即最长上升子序列问题(Longest increasing subsequence) 解法一定义dp[i]表示以第i个位置的数作为子序列中最后一个元素时,能够构成的子序列的最大长度。转移方程如下:dp[

2017-08-20 11:48:51 346

原创 多重背包简介

背包问题背包问题是指在一个有容积限制(或者重量限制)的背包中放入物品,物品拥有体积、重量和价值等属性。需要求一种满足背包限制的放置物品的方式,使得背包中物品的价值之和最大。根据物品的限制条件可分为01背包、完全背包、多重背包和分组背包等问题。背包问题是动态规划的经典问题之一,在实际中往往有很多变形,需要通过一些方法,把问题转化为背包问题。多重背包多重背包的特点是物品的数量可以大于1但有限制。状态定义

2017-08-18 22:26:59 543

原创 完全背包简介

背包问题背包问题是指在一个有容积限制(或者重量限制)的背包中放入物品,物品拥有体积、重量和价值等属性。需要求一种满足背包限制的放置物品的方式,使得背包中物品的价值之和最大。根据物品的限制条件可分为01背包、完全背包、多重背包和分组背包等问题。背包问题是动态规划的经典问题之一,在实际中往往有很多变形,需要通过一些方法,把问题转化为背包问题。 完全背包完全背包的特点是每种物品数量没有限制,可以无限使用

2017-08-18 20:42:58 398

原创 01背包简介

背包问题背包问题是指在一个有容积限制(或者重量限制)的背包中放入物品,物品拥有体积、重量和价值等属性。需要求一种满足背包限制的放置物品的方式,使得背包中物品的价值之和最大。根据物品的限制条件可分为01背包、完全背包、多重背包和分组背包等问题。背包问题是动态规划的经典问题之一,在实际中往往有很多变形,需要通过一些方法,把问题转化为背包问题。01背包01背包是背包问题中最简单的问题...

2017-08-18 19:00:19 413

原创 HDU 5692(DFS序,线段树)

problem百度科技园内有n个零食机,零食机之间通过n−1条路相互连通。每个零食机都有一个值v,表示为小度熊提供零食的价值。 由于零食被频繁的消耗和补充,零食机的价值v会时常发生变化。小度熊只能从编号为0的零食机出发,并且每个零食机至多经过一次。另外,小度熊会对某个零食机的零食有所偏爱,要求路线上必须有那个零食机。 为小度熊规划一个路线,使得路线上的价值总和最大。 Input...

2017-08-18 11:02:26 456

原创 Poj 3321(DFS序,线段树)

problemThere is an apple tree outside of kaka’s house. Every autumn, a lot of apples will grow in the tree. Kaka likes apple very much, so he has been carefully nurturing the big apple tree.The tr...

2017-08-18 01:10:17 566

原创 Poj 3667(线段树,查找连续区间,区间合并)(经典)

problemThe cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a vacation on the sunny shores of Lake Superior. Bessie, ever the competent travel agent, has named t

2017-08-17 23:17:21 501

原创 HihoCoder 1079(线段树,改变递归区间解决问题)

problem小Hi和小Ho在回国之后,重新过起了朝7晚5的学生生活,当然了,他们还是在一直学习着各种算法~这天小Hi和小Ho所在的学校举办社团文化节,各大社团都在宣传栏上贴起了海报,但是贴来贴去,有些海报就会被其他社团的海报所遮挡住。看到这个场景,小Hi便产生了这样的一个疑问——最后到底能有几张海报还能被看见呢?于是小Ho肩负起了解决这个问题的责任:因为宣传栏和海报的高度都是一样的,

2017-08-17 17:58:15 357

原创 STL库函数获取字符串包含的字符集(unique()函数)

引言今天做题目时,遇到一个操作是:去除有序的一段序列里重复的元素,那直接扫一遍就可以了。在看别人代码时发现了unique()这个函数,正如他的名字一样,“独一无二”,可以方便地完成这个操作。STL定义_FwdIt unique(_FwdIt _First, _FwdIt _Last)template<class _FwdIt,class _Pr> inline用法unique()函数将重复的元素

2017-08-17 17:55:10 749

原创 POJ 3225(线段树,区间的交并补操作)

problemLogLoader, Inc. is a company specialized in providing products for analyzing logs. While Ikki is working on graduation design, he is also engaged in an internship at LogLoader. Among his tasks,

2017-08-17 11:39:48 583

原创 POJ 2528(线段树,区间覆盖,离散化思想)

problemThe citizens of Bytetown, AB, could not stand that the candidates in the mayoral election campaign have been placing their electoral posters at all places at their whim. The city council has fin

2017-08-16 18:37:42 913 4

原创 hdu1394(线段树求逆序对数)

problemThe inversion number of a given number sequence a1, a2, …, an is the number of pairs (ai, aj) that satisfy i &lt; j and ai &gt; aj. For a given sequence of numbers a1, a2, …, an, if we move...

2017-08-16 13:14:01 415 1

原创 洛谷 3373(线段树,区间加减及乘法 询问区间和)

problem已知一个数列,你需要进行下面两种操作:1.将某区间每一个数加上x2.将某区间每一个数乘上x3.求出某区间每一个数的和输入格式第一行包含三个整数N、M、P,分别表示该数列数字的个数、操作的总个数和模数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含3或4个整数,表示一个操作,具体如下:操作1: 格式:1 x y k 含义:将区间[x,y]内每个数

2017-08-15 23:03:53 1580

原创 HihoCoder 1078(线段树,区间覆盖 询问区间和)

problem对于小Ho表现出的对线段树的理解,小Hi表示挺满意的,但是满意就够了么?于是小Hi将问题改了改,又出给了小Ho:假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi。小Hi的每次操作分为两种可能,第一种是修改价格——小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP。第二种操作是询问——小Hi给出一段区

2017-08-15 16:33:20 489

原创 POJ 3468(线段树,区间加减 询问区间和)

problemYou have N integers, A1, A2, … , AN. You need to deal with two kinds of operations. One type of operation is to add some given number to each number in a given interval. The other is to ask for

2017-08-15 16:29:37 454

原创 HDU 1754(线段树,单点覆盖 询问区间最值)

problem很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。Input本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N 和 M ( 0Output对于每一次询问操作,在一行里面输出最高

2017-08-15 16:25:43 281

原创 HDU 1166(线段树,单点加减 询问区间和)

problemC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视。 中央情报局要研究敌人究竟演

2017-08-15 16:22:33 347

原创 线段树(Segment Tree)简介

基本概念线段树(segment tree)是一种二叉搜索树,它的每一个结点对应着一个区间[l,r],叶子结点对应的是一个单位区间,即l==r。对于一个非叶子结点[l,r],它的左儿子所表示的区间为[l,(l+r)/2],右儿子表示的区间为[(l+r)/2+1,r]。根据定义,线段树是一颗平衡二叉树,它的叶子结点的数目为N,即整个区间的长度。例如,区间[1,10]的线段树如下图所示:

2017-08-15 16:16:03 623

原创 hihocoder 1185(SCC,路径和)

problem暑假到了!!小Hi和小Ho为了体验生活,来到了住在大草原的约翰家。今天一大早,约翰因为有事要出去,就拜托小Hi和小Ho忙帮放牧。约翰家一共有N个草场,每个草场有容量为W[i]的牧草,N个草场之间有M条单向的路径。小Hi和小Ho需要将牛羊群赶到草场上,当他们吃完一个草场牧草后,继续前往其他草场。当没有可以到达的草场或是能够到达的草场都已经被吃光了之后,小hi和小Ho就把牛羊群赶回家。一开

2017-08-14 22:41:58 460

原创 Tarjan算法求解强连通分量(SCC)

强连通分量有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量(strongly connected components)。 Tarjan算法求解思路 首先,

2017-08-14 22:19:13 1599

原创 POJ1988 Cube Stacking(并查集的应用)

problemFarmer John and Betsy are playing a game with N (1 <= N <= 30,000)identical cubes labeled 1 through N. They start with N stacks, each containing a single cube. Farmer John asks Betsy to perform

2017-08-13 00:36:43 337

win7_64位_汇编环境搭建指南_DOSbox

win7_64位_汇编环境搭建指南_DOSbox DOSBOX本来是用来在windows环境下运行DOS游戏的一款游戏工具,但是我们用来在win7环境下进行汇编的学习

2017-09-04

masm 6 . 15

MASM是Microsoft Macro Assembler 的缩写,是微软公司为x86 微处理器家族开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发,编译速度快,支持80x86汇编以及Win32Asm,是Windows下开发汇编的利器。

2017-09-04

DOSBox0.74

DOSBox是一个软件。它是当前在 Windows 系统运行 DOS 游戏的较为完美的解决方案,该软件不仅能支持相当多的游戏实现正常运行,而且能将声音完美表现出来。

2017-09-04

简单旅游景点咨询系统的设计与实现

创建一个至少有15个点的有向网表示的某个旅游景点的导游图。顶点代表景点,类型为字符串(例如,泰山导游图:“天地广场门”,“十八盘”,“冯玉祥墓”,“桃花峪门”,“中天门”,“南天门”,“玉皇顶”等),弧表示两个景点之间可以直达,弧上的权值表示两个景点之间的路程(公里数),弧上还有到达方法的信息(有步行和索道两种)。建立一个游客咨询系统。

2017-07-12

哈夫曼编/译码系统的简单设计与实现

利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。该代码设计一个哈夫曼编译码系统: (1)初始化(Initialzation)。从数据文件DataFile.data中读入字符及每个字符的权值,建立哈夫曼树HuffTree; (2)编码(EnCoding)。用已建好的哈夫曼树,对文件ToBeTran.data中的文本进行编码形成报文,将报文写在文件Code.txt中; (3)译码(Decoding)。利用已建好的哈夫曼树,对文件CodeFile.data中的代码进行解码形成原文,结果存入文件Textfile.txt中; (4)输出(Output)。输出DataFile.data中出现的字符以及各字符出现的频度(或概率);输出ToBeTran.data及其报文Code.txt;输出CodeFile.data及其原文Textfile.txt;

2017-06-21

空空如也

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

TA关注的人

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