E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
UVALIVE
uvalive
4614 (这题不懂)
题意:给你一棵树,有一些点你需要去一定的次数,每去一次你都要回来,求最小的权值和参考的代码:#include #include #include #include #defineINF1000000000000000LL usingnamespacestd; constintMAXN=50010; intn,m,num,cas,u,v; longlongans,sum,w; inthead[MA
vv494049661
·
2016-05-07 14:00
UVALIVE
4452(2-SAT变形)
题目链接:
UVALIVE
4452解题思路:题意大概这样,n个人对m个方案进行投票,每个人最多对m个方案中的4个投票,要么支持,要么反对,问是否存在一个最终决定,能够让每个投票人都有一半以上的建议被采纳。
fuyukai
·
2016-05-04 20:00
UVALive
4254
题意:t个测试样例,每个测试样例有n个任务,给你起始时间、终止时间和任务量,每个任务必须在起始时间和终止时间之间完成(包括边界),现在要找出一个最小的每分钟处理的任务量,使得可以在规定时间内完成n个任务。做法:二分,先用优先队列排序,先做已经开始且最早结束的,如果队列非空,判断当前的任务是否在规定的时间,如果不在,那么这个时间就不行。#include #include #include #incl
black_miracle
·
2016-04-29 14:00
UVALive
5181 Stamps and Envelope Size
UVALive
5181StampsandEnvelopeSize一DPhttps://icpcarchive.ecs.baylor.edu/index.php?
Summer_via
·
2016-04-28 19:00
dp
UVALive
- 4845 组合数
PasswordTimeLimit: 3000MS MemoryLimit: Unknown 64bitIOFormat: %lld&%lluSubmit StatusDescriptionShoulder-surfingisthebehaviorofintentionallyandstealthilywatchingthescreenofanotherperson'selectronicdevi
qq_29807167
·
2016-04-28 19:00
UVALive
2963-Hypertransmission-贪心
题意:有n个星球,坐标x,y,z,播放着1或0类节目,现在求一个半径,表示星球的接受信号半径,如果星球接受不同类型节目多于同类型节目,则该星球为间谍星球,现在求让最多星球变成间谍星球且半径要尽可能小。求个数和半径。显然个数最大的情况下,最小的半径肯定是星球间距的某一个,所以我们直接枚举星球间距即可,当然排个序后从小到大枚举即可,对于距离相同的一些星球要连续计算,直到遇到一个更大的dis,此时更新答
viphong
·
2016-04-28 10:00
uvalive
4613
题目大意:给出n辆车的行走方向,到达时间和通过某段路的时间。有一个单行道,只能让一辆车经过,为了保证安全两辆车之间经过同一个点的时间差要>=10问所有的车经过这段路的最少时间。思路:dp[i][j][k]代表的是方向向左的经过i辆方向向右的经过j辆最后一辆车的方向为k的时候的经过这段路所需要使用的最少时间。那么假设前一辆车发车的时间为s,到达终点的时间为t那么当前的车的发车是时间就是max(now
vv494049661
·
2016-04-27 15:00
uvalive
4625(dp + 二分)
题目大意:给你一串n个数,表示n个球,给你这n个球的重量,要你把这n个数分成m-1段,每段的数字个数都是偶数,对于每一段,它的半段数字个数都不超过d,找出一种分发,使所有的这些半段的重量的最小值,并输出这个最小值。思路:详细见代码解释代码:#include usingnamespacestd; #include #include constintINF=0x3f3f3f3f; constintm
vv494049661
·
2016-04-27 15:00
uvalive
4987
题目大意:有n支施工队在修一条笔直的高速公路,其中第i支队伍离告诉公路起点的距离是ai,另外还有m个避难所,其中第i个避难所离高速公路的起点的距离是bi,给每只施工队分配一个避难所,距离是|ai,-bi|,求使得所有施工队移动距离的总距离最小,每个避难所最起码有一个施工队,打印每个施工队伍的避难所号思路:dp[i][j]表示前i只队伍到前j个避难所(前j个避难所每个都有施工队)所需要移动的最短距离
vv494049661
·
2016-04-27 11:00
UVALive
3135 Argus(优先队列)
思路:优先队列#include usingnamespacestd; structItem { intQNum,Period,Time; booloperatora.Time||(Time==a.Time&&QNum>a.QNum); } }; intmain() { priority_queuepq; chars[20]; while(scanf("%s",s)&&s[0]!='#') { I
qq_21057881
·
2016-04-26 22:00
uvalive
4490(状态压缩 + dp)
题目大意:从左到右给出n本数的高度和最多可以抽取的书本的数量k,如果书本与相邻的书本的高度不相同的话就是一个段,段越多混乱度就越高。求最低的混乱度。思路:dp[i][j][s][end]表示前i本书操作了j次,剩下的书的状态为s,最后一本书是end的最低的混乱度。那么对于一本书有两种情况:1.跟其前面的书籍的高度是一样的那么dp[i][j][s][end]=min(dp[i][j][s][end]
vv494049661
·
2016-04-26 22:00
UVALive
- 3902 Network 无根树转为有跟树+搜索+贪心
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=16451题目大意:n台机器连成一个树状网络,其中叶节点是客户端,其他节点是服务器。现在有一台服务器在节点s,服务器能传播的信号的距离为k,因为有的用户距离服务器的距离大于k,所以必须添加服务器。问最少要添加几个服务器,才能使每个客户端都收到信号首先以S为根节点建立一颗有根树,并
viphong
·
2016-04-26 16:00
uvalive
4015
题目大意:一棵n个节点的有根树,树的边有正整数权,表示两个节点之间的距离,你的任务是回答这样的询问,从根节点出发,走不超过x单位的距离,最多能走多少个节点,节点经过多次算一个,对于每次的询问输出:经过节点数最大的值思路:树形DP。树形DP一般都是用三维结构完成的。dp[i][j][k]表示根节点为i经过了j个节点,类似于01背包,k==0表示返回,k==1表示不返回。所以如果返回的话只有一种情况就
vv494049661
·
2016-04-26 11:00
UVALive
- 6832 Bit String Reordering (找规律)
题目:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=79052代码:#include #include #include #include usingnamespacestd; intmain() { intn,m; while(~scanf("%d%d",&n,&m)) { inta[20],b[20]; for(
qq_32473657
·
2016-04-24 00:00
UVaLive
3619-Sum of Different Primes
【问题描述】 Apositiveintegermaybeexpressedasasumofdifferentprimenumbers(primes),inonewayoranother.Giventwopositiveintegersn and k,youshouldcountthenumberofwaystoexpress n asasumofk differentprimes.Here,
朱龙源
·
2016-04-24 00:00
uvalive
4945(dp,贪心)
转自别人http://blog.csdn.net/shuangde800/article/details/10019951题目大意:Petra和Jan分n个糖果,每个人轮流拿,一次只能拿一个,抽签决定谁先开始拿每个糖果有两个值x,y,如果Petra拿了会获得值x,Jan拿了会获得值yPetra每次都选择对自己价值最大的(x最大)拿,如果有多个x相同大,选择y值最小的Jan选择的策略是,要让自己最终
vv494049661
·
2016-04-21 19:00
uvalive
4394(区间dp)
题目大意:给出两个字符串;每次可以选择第一个字符串的一个区间,全部刷成某一个字母;问最少刷几次可以刷成第二个串;思路:dp[i][j]是区间(i,j)最少需要刷多少此。如果a[i]==a[k]那么dp[i][j]=min(dp[i][j],dp[i+1][k]+dp[k+1][j])因为i和k相等的话,那么k就不需要在刷了,所以分成这两个区间算的话会是最优的。最后拿第一串和第二串进行比较。如果相等
vv494049661
·
2016-04-21 18:00
uvalive
3363
题目大意:压缩字符串。例如letsgogogo=lets3(go)letsgogogo的长度是10lets3(go)的长度是93(go)的长度计算:每个字符算1的长度所以这是5思路:字符号DP。区间DP。dp[i][j]表示在从i到j可以达到的最短的产地故代码:#include usingnamespacestd; #include #include charstr[205]; intlen;
vv494049661
·
2016-04-20 17:00
uvalive
2038(树形DP基础题)
题目大意:给定一棵树,要求选择尽量少的点,使得没有被选择的点都可以至少和一个已经选择的点相邻。思路:树形DP。类似于01背包问题。树上的结点要么选要么不选。dp[i][0]表示第i个结点不选那么dp[i][0]+=dp[j][1]其中j是i的子树的根节点。dp[i][1]表示第i个结点要选那么dp[i][1]+=min(dp[j][1],dp[j][0])发现一个问题:90:(3)1232:(1)
vv494049661
·
2016-04-20 17:00
uvalive
4727
类似于
uvalive
3882代码:#include usingnamespacestd; #include #include intdp[500005]; intmain(){ intT; intn
vv494049661
·
2016-04-19 20:00
UVALive
7152 Catering 有上下界的费用流
有n+1个点的图,点编号是从0到n,有k个机器在0号点。一个机器可以从编号小的可以往编号大的走,反之不行。机器可以经过很多点。若有一个点被某个机器经过,那么这个点就被处理。对于每个点都可以通往编号比它大的点,都需要一定的花费。求让所有点都被处理的最小花费。输入格式:输入文件包含多组数据,对于每组数据,先是n,k,接下来n行每行描述一个点的情况,先是0号点到1、2、….、n号点的花费,然后是1号点到
huanghongxun
·
2016-04-19 11:00
live
uvalive
网络流
费用流
OI
uvalive
4731
题目大意:给出数字的个数n以及要分成的组数w。然后给出各个数字的概率,求最小的数学期望。思路:DP。因为要求最小的数学期望所以概率大的应该摆在前面,所以要先排序一下。dp[i][j]表示的是第i组前j个数字可以得到的最小的数学期望。代码:#include usingnamespacestd; #include #include #include constintINF=0x3f3f3f3f; co
vv494049661
·
2016-04-18 16:00
uvalive
4256
题目大意:给出一个无向联通图和一串数字,然后要你修改这串数字,使得数字在无向联通图中是连通的或者它们是相等的。思路:DP。dp[i][j]表示的是从1到第i个数字以j结尾需要修改多少个数字。dp[i][j]=min(dp[i][j],dp[i-1][k]+(j==x?0:1))其中x表示的是给出的序列中第i个位置的数字是多少。这个状态转移方程的前提是j跟k必须是联通的。代码:#include us
vv494049661
·
2016-04-16 17:00
UVALive
6195 —— The Dueling Philosophers Problem
原题:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4206题意:有n个点,给出m条限制关系,即a必须在b前面;将这n个点进行先后排序,如果只有一种排序方法,则输出1;如果有多种,则输出2;如果无法给出排序(即存在矛盾关系),则输出0;思路
L_avender
·
2016-04-16 16:00
强连通
uvalive
5848
题目大意:给出m个坐标和n个坐标,n个坐标的横坐标都比m个坐标的横坐标要来的小。求出从m个坐标中选出一个坐标,要使得它到n个坐标中的其中一个坐标的汉明距离达到最小。思路:汉明距离:abs(x1-x2)+abs(y1-y2)由于任意的x1=y2的情况,x1-x2+y1-y2即x1+y1-(x2+y2)y1 usingnamespacestd; #include #include #include
vv494049661
·
2016-04-16 16:00
UVALive
7040 Color (容斥原理 + 组合数学递推公式 + 求逆元 + 基础数论)
传送门英文题目:Recently,Mr.Bigrecievednowersfromhisfans.Hewantstorecolorthoseowerswithmcolors.Theowersareputinaline.Itisnotallowedtocoloranyadjacentowerswiththesamecolor.Flowersiandi+1aresaidtobeadjacentfore
qingshui23
·
2016-04-11 20:00
数论
容斥原理
逆元
组合数学公式
容斥原理训练 (16.04.10)
题目:UVA10325A-TheLotterypoj3904SkyCode
uvalive
7040colorhdu4059TheBossonMarsH-VisibleTreesUVA10325A-TheLotteryhttps
theArcticOcean
·
2016-04-10 20:00
组合
容斥
UVALIVE
3523(双连通分量+二分图染色)
题目链接:
UVALIVE
3523解题思路:这题是一道神题,考察的内容非常综合!这题最终转化为求解图中结点是在一个奇圈上。
fuyukai
·
2016-04-08 10:00
UVALive
4731 Cellular Network 【dp】
题意:n个数分成w组,每组的值为到现在这组为止元素个数乘以该组概率之和,求出最小的和。分析:贪心思想可知,概率越大的放越早越好,因为前面的系数小,所以我们把所有数排个序。但是每个组的系数是有加入的元素个数决定的。用dp解决,设dp[i][j]表示前i个数分成j组能获得的最小值。dp[i][j]=min(dp[i][j],dp[i-k][j-1]+i*(sum[i]-sum[i-k]));代码:#i
u012483216
·
2016-04-06 22:00
UVALive
7269 (构造)
链接:点击打开链接题意:构造出一个矩阵,使得矩阵含有n条蛇,每条蛇的长度是1到n,并且奇数长度的蛇有奇数个拐弯,偶数长度的蛇有偶数个拐弯.奇数和偶数分开构造,奇数可以是:1357335755577777这样一直构造下去,偶数可以这样:22664466446688888888不断的放右边和放下面.然后预处理每一个蛇的每一个坐标,然后考虑一下偶数的是放在奇数部分的右边还是下面.#include usi
morejarphone
·
2016-04-04 22:00
UVALive
7511 Multiplication Table (数学模拟题)
题目大意:给一个数字矩阵,'?'表示不确定的数字,问这个子矩阵可不可能存在于乘法表里题目分析:全是问号显然可以,只有一个数字枚举约数和数字的坐标比较,大于等于两个数字,还是枚举约数判断与剩下的数字是否匹配#include#include#includeintconstMAX=1005;doubleconstEPS=1e-10;structNUM{intx,y,val;}num[MAX*MAX];c
_TCgogogo_
·
2016-03-31 22:39
ACM
数学思维题
UVALive
4255-Guess-拓扑排序
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=21664题意:对于一个序列a1,a2...an,我们可以计算出一个符号矩阵S,其中Sij为ai+..+aj的正负号或0,代表下标i累加到j的元素和为正负或0。给出符号矩阵,要求输出一个对应的序列。对于Sij,我们可以看成前缀和SUM[J]-SUM[I-1]那么每个符号就对应了一
viphong
·
2016-03-31 16:00
【暑假】[深入动态规划]
UVAlive
3983 Robotruck
UVAlive
3983 Robotruck 题目: Robotruck TimeLimit: 3000MS MemoryLimit: Unknown 64bitIOFormat: %lld&%llu
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
4670 Dominating Patterns
UVAlive
4670DominatingPatterns 题目: DominatingPatterns TimeLimit:3000MS MemoryLimit:Unknown 64bitIOFormat
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
3942 Remember the Word
UVAlive
3942RemembertheWord 题目:RemembertheWord TimeLimit:3000MS MemoryLimit:Unknown 64bitIOFormat:%lld
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
3026 Period
UVAlive
3026Period 题目:Period TimeLimit:3000MS MemoryLimit:Unknown 64bitIOFormat:%lld&%llu SubmitStatus
hahalidaxin
·
2016-03-30 17:00
【暑假】[深入动态规划]
UVAlive
4794 Sharing Chocolate
UVAlive
4794 SharingChocolate 题目:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
3644 X-Plosives
UVAlive
X-Plosives 思路: “如果车上存在k个简单化合物,正好包含k种元素,那么他们将组成一个易爆的混合物” 如果将(a,b)看作一条边那么题意就是不能出现环,很容易联想到Kruskal
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
3135 Argus
UVAlive
3135ArgusArgusTimeLimit:3000MS MemoryLimit:Unknown 64bitIOFormat:%lld&%lluSubmitStatusDescriptionAdatastreamisareal-time
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
3027 Corporative Network
UVAlive
3027CorporativeNetwork 题目: CorporativeNetworkTimeLimit:3000MS MemoryLimit:30000KTotalSubmissions
hahalidaxin
·
2016-03-30 17:00
【暑假】[实用数据结构]
UVAlive
4329 Ping pong
UVAlive
4329 Pingpong 题目:PingpongTimeLimit:3000MS MemoryLimit:Unknown 64bitIOFormat:%lld&%lluSubmitStatusDescriptionN
hahalidaxin
·
2016-03-30 17:00
UVALive
2965-Jurassic Remains (Mitm)中途相遇法+bitmask
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=34853题目大意:给出N个字符串,字符串里面的字符全是大写字母,要求你在N个字符串中选出M个字符串,使这M个字符串的每个字符出现的个数为偶数,求M的最大值把字符串压缩到一个int的26位。要求一个字符串子集中所有字符出现个数为偶数,也就是所以字符串的异或值为0n=24,直接枚举
viphong
·
2016-03-30 16:00
UVALive
7512 November 11th(脑洞)
题目链接:点击打开链接给出坏凳子的位置,座位不能挨着坐,问最多可以做多少人,以及最少可以坐多少人使得不能再有可以坐的位置.最多可以坐多少人,只要中间空一个即可,本题wa点在最少坐的人数,中间空两个也可以...比如.S..S.所以空的位置大于2时,分母为3.AC代码:#include"iostream"#include"cstdio"#include"cstring"#include"algorit
GKHack
·
2016-03-29 17:08
UVA
脑洞题目
STL
UVALIVE
3516(DP)
题目链接:
UVALIVE
3516解题思路:大白书上题目,思路当然是枚举所有情况,实现即记忆化搜索或者动态规划。具体的做法就是枚举根结点最左边的结点,右边的所有结点情况随意,递归调用即可。
fuyukai
·
2016-03-25 23:00
UVALive
5009
Link:clickhereThequestion:给出n组a,b,c的值,求出函数值最大值的最小值Solution:三分,黄金分割法(优选法),Fibonacci搜索都可求单峰函数的极值。Conclusion:跟据题目要求判断循环的次数或者需要控制的精度Code:#include usingnamespacestd; constdoubleeps=1e-9; intn; inta[10004],
u013889450
·
2016-03-22 19:00
三分
UVALive
7037 (最大密度子图 网络流)
每个数都看成一个节点,每个逆序对之间的节点连边,于是只需要求出这个图的最大密度子图,可以用最小割模型解决.#include #include #include #include #include #include #include usingnamespacestd; constdoubleINF=1e8; #definemaxn1511 #definemaxm2111111 #defineeps
morejarphone
·
2016-03-22 16:00
UVALive
4127
Link:clickhereThequestion:给出n座山的高和宽,山视为等腰三角形,从上往下看,求山的轮廓的长度,山之间的空白不算。Solution:用竖线在山与山的交点和顶点处,把所有山分成一段一段的的线段,统计竖线内每段线段的长度,累加即可。先把所有端点的横坐标放入数组X里,然后对线段两两求交,把交点的横坐标也放入数组X里,然后排序去重。求出每条线段与竖线的交点的y坐标的最大值,因为竖线
u013889450
·
2016-03-21 18:00
计算几何
UVALive
4256 Salesmen 【简单dp】
题意:给你一棵树,和一串序列,求最少改变多少个数使得序列中的每个相邻的数要么相等要么在树上相邻。分析:设状态dp[i][j]表示长度为i以j结尾最少修改几次合法。转移dp[i][k]=min(dp[i][k],dp[i-1][j]+(a[i]!=k)) k是当前最后数字,j是k前一个,j可以等于k(处理与前面相等),若j与k在树上相邻,判断a[i]!=k,dp[i][k]+1;代码:#includ
u012483216
·
2016-03-20 22:00
UVALive
4123Glenbow Museum
题意:给定一个长度L。求满足'O'.'R'表示的长度为L的边平行于坐标轴的多边形有多少种。并且在多边形内的任意一点都能直接看到每个顶点。分析:《算法竞赛入门经典训练指南》数学基础例题6。在分析完数量差是4之后,我是直接用的组合数求,不是像刘汝佳一样的递推。代码:#include#include#include#include#include#include#include#include#incl
Fsss_7
·
2016-03-19 14:06
UVALive
4123Glenbow Museum
题意:给定一个长度L。求满足'O'.'R'表示的长度为L的边平行于坐标轴的多边形有多少种。并且在多边形内的任意一点都能直接看到每个顶点。分析:《算法竞赛入门经典训练指南》数学基础例题6。在分析完数量差是4之后,我是直接用的组合数求,不是像刘汝佳一样的递推。代码:#include #include #include #include #include #include #include #inclu
Fsss_7
·
2016-03-19 14:00
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他