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
Sticks
codeforces 571A--Lengthening
Sticks
(组合+容斥)
A.LengtheningStickstimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputYouaregiventhreestickswithpositiveintegerlengthsof a, b,and c centimeters.Youcanincreasele
u013015642
·
2015-08-24 14:00
CodeForces #317 (div2) C.Lengthening
Sticks
(容斥)
题目大意:给出a,b,c,l要求a+x,b+y,c+z构成三角形,x+y+z=0)。然后枚举它长度是a+i, a+i+1,....a+L的情况。此时假设当前用去长度i,则最大可用剩余长度是min( L - i, a + i - b - c),然后在这些长度里面任意分配。#include #include #include #include #include #include #include #d
qq919017553
·
2015-08-23 22:00
Lengthening
Sticks
1.题目描述:点击打开链接2.解题思路:本题利用减法原理解决。比赛时候暴力枚举果断超时==。正确的做法是用总体方案-不合理的方案数。显然,总体方案的个数等价于求解x1+x2+x3+x4=l的非负整数解的个数,利用组合数学的结论等于C(l+4-1,4-1)=C(l+3,3)。其中x4表示没有使用的长度,它从0取到l。接下来就是考虑不合理的方案数目。我们先考虑让a增加一个La,变成a+La,我们令i=
u014800748
·
2015-08-23 11:00
计数
组合数学
POJ2513 Colored
Sticks
欧拉路径+Tire树
题目链接:http://poj.org/problem?id=2513题目大意:有n条木棒,没条木棒两端各有一种颜色,木棒之间可以连接当且仅当连接端的颜色相同,让判断对于给出的若干木棒,能否全部连接起来。分析:以每种颜色为顶点建图,要想所有木棒都连接起来,即找出该图的一条欧拉路径。对于每种颜色,我们需要一一对应一个数字,我用map写了一个,果然TLE了,毕竟数据量还是不小的,改为用Tire树还跑了
AC_Gibson
·
2015-08-19 14:00
1.3.7 Wooden
Sticks
WoodenSticksTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):2565AcceptedSubmission(s):995 ProblemDescriptionThereisapileofnwoodensticks.Thelengthandweightofea
Sterben_Da
·
2015-08-18 18:00
POJ 2513 Colored
Sticks
(字典树+欧拉路径)
题目:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=11158ColoredSticksTimeLimit: 5000MS MemoryLimit: 128000KB 64bitIOFormat: %I64d&%I64uSubmit StatusDescriptionYouaregivenabunchofwoodenstic
theArcticOcean
·
2015-08-18 15:00
poj
欧拉路径
HDU 1051 Wooden
Sticks
(贪心)
WoodenSticksTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)ProblemDescriptionThereisapileofnwoodensticks.Thelengthandweightofeachstickareknowninadvance.Thesticksaretobeproc
queuelovestack
·
2015-08-16 20:00
ACM
贪心
poj1011
Sticks
DescriptionGeorgetooksticksofthesamelengthandcutthemrandomlyuntilallpartsbecameatmost50unitslong.Nowhewantstoreturnstickstotheoriginalstate,butheforgothowmanystickshehadoriginallyandhowlongtheywereori
Kirito_Acmer
·
2015-08-14 20:00
搜索
307 -
Sticks
(深搜 + 剪枝)
由于要求最小长度,所以可以从小到大枚举木棍的长度,显然,木棍最小值为所给木棍的最大值。所以从该值开始枚举木棍长度,则木棍如果大于所有木棍之和,那么答案肯定就是所有之和了。该题时间卡的比较紧,需要努力剪枝,总的来说就是找到几种肯定不会得到最优解的情况,然后直接回溯。细节见代码:#include usingnamespacestd; constintmaxn=10000; intn,a[maxn],v
weizhuwyzc000
·
2015-08-12 21:00
搜索
ACM
uva
ACM-ICPC
[UVA 10003]Cutting
Sticks
[DP]
题目链接:[UVA10003]CuttingSticks[DP]题意分析:给出一根木棍,然后需要对其进行切割,每一次切割费用是被切割木棍的长度。比如长度为10米,在4米处切割,因为被切割的木棍长度为10米,所以费用为10。问:升序给出所有要切割的点,最少的切割费用是多少?解题思路:状态:dp[i][j]表示切割区间[i,j]所需要的最少费用;转移:dp[i][j]=min(dp[i][j],dp[
CatGlory
·
2015-08-12 18:00
dp
uva
hdu1455 && poj1011
Sticks
(深度优先搜索 DFS 经典剪枝 详解)
这道题在两个OJ上都有POJ地址http://poj.org/problem?id=1011HDU地址http://acm.hdu.edu.cn/showproblem.php?pid=1455SticksTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 129296 Accepted: 30304DescriptionGeorgetoo
sinat_30126425
·
2015-08-12 15:00
uva 10003 Cutting
Sticks
切木条dp
这道题有些类似矩阵连乘,就是区间的问题。设dp[i][j]表示从i到j的最小花费,那么dp[i][j]=min{dp[i][k]+dp[k][j]+a[j]-[i]}(i #include #include #include #include #include #include #include #include usingnamespacestd; intmain() { ints,n; i
sinat_22659021
·
2015-08-12 10:00
POJ 2513 Colored
Sticks
(Tire+欧拉路+并查集)
ColoredSticksTimeLimit: 5000MS MemoryLimit: 128000KTotalSubmissions: 32788 Accepted: 8639DescriptionYouaregivenabunchofwoodensticks.Eachendpointofeachstickiscoloredwithsomecolor.Isitpossibletoalignthe
Grit_ICPC
·
2015-08-11 21:00
并查集
欧拉回路
trie
POJ 2513 Colored
Sticks
(欧拉回路+字典树+并查集)
题意:给你很多对单词,单词相当于一个点,一对单词相当于一条边,问这么多对的单词能否组成一条欧拉路,要求每条边都要经过。解析:题目数据很大,每个单词最多10个字母,据说用map映射会TLE。所有要改用字典树进行hash。判断欧拉路径或者回路需要满足两个条件。图上所有点联通度数为奇数个的节点只有0个或者2个。具体做法:判断连通性就用并查集,判断是否只有1个根节点。再判断最后奇度节点是否只有0个或者2个
HelloWorld10086
·
2015-08-09 16:00
poj
2513
【POJ 2513】Colored
Sticks
【POJ2513】ColoredSticks并查集+字典树+欧拉通路第一次做这么混的题。。太混了……不过题不算难字典树用来查字符串对应图中的点每个单词做一个点(包括重复单词题意就是每个边走且直走一次(欧拉通路欧拉图的判定:没有或者只有两个奇数度的点的图叫做欧拉图有这些就可以解答此题了另外需要注意题目范围是25W个木棍所以最多可能有50W个点卡了好多个RE代码如下:#include #include
ChallengerRumble
·
2015-08-02 21:00
并查集
字典树
欧拉图
周赛-Colored
Sticks
ColoredSticksTimeLimit:5000MSMemoryLimit:128000KTotalSubmissions:32423Accepted:8556DescriptionYouaregivenabunchofwoodensticks.Eachendpointofeachstickiscoloredwithsomecolor.Isitpossibletoalignthesticks
huayunhualuo
·
2015-08-02 09:00
HDOJ 1051 Wooden
Sticks
(贪心)
WoodenSticksTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):14853 AcceptedSubmission(s):6090ProblemDescriptionThereisapileofnwoodensticks.Thelengthandw
jinjide_ajin
·
2015-07-29 21:00
贪心
hdoj
贪心算法——Wooden
Sticks
DescriptionThereisapileofnwoodensticks.Thelengthandweightofeachstickareknowninadvance.Thesticksaretobeprocessedbyawoodworkingmachineinonebyonefashion.Itneedssometime,calledsetuptime,forthemachinetopr
sinat_30062549
·
2015-07-29 19:00
贪心算法
Sticks
Wooden
多关键字排序
poj1011
Sticks
经典搜索
//给n个小木棒,拼成任意个长度相等的长木棒 //求长木棒的最短长度 #include #include #include #include usingnamespacestd; constintmaxn=110; inta[maxn]; intvis[maxn]; intnum,len,n; booldfs(intsum,intpos,intcnt) { if(cnt==num)returntr
cq_pf
·
2015-07-29 19:00
搜索
POJ 2653 && HDU 1147 Pick-up
sticks
(计算几何)
Description有n根木条,一根一根的往一个坐标系上丢(给出木条两点的坐标),问最后不被覆盖的木条有哪些,即丢的木条如果和前面丢的木条交叉的话,就会覆盖前面那根木条Input多组用例,每组用例第一行为木条数n,之后n行每行四个浮点数表示木条两端坐标,以n=0结束输入Output对于每组用例,输出最后不被覆盖的木条SampleInput5114223311-2.0841482336-2.030
V5ZSQ
·
2015-07-28 11:00
HDU 1051 Wooden
Sticks
题目地址:点击打开链接思路:贪心+动归AC代码:#include #include usingnamespacestd; structwood { inthead; inttail; intflag; }a[5010]; intcmp(structwoodx,structwoody) { if(x.head!=y.head) returnx.head=end) { a[j].flag=0; end
qq_25605637
·
2015-07-27 12:00
poj(1011)——
Sticks
(经典的dfs+剪枝)
题目的大致意思是:现在有n根木棍,然后需要把它们拼成同样长度的木棍,问满足这个条件的最短的长度是多少?想法嘛:那肯定是dfs把长度搜一遍就好,但问题的关键是这里会超时。那么就要用到剪枝的原理了。以下部分是来自于pku的gw老师说哒1)不要在同一个位置多次尝试相同长度的木棒(在某一次拼接时选择长度为s的木棒导致拼接失败,则在同一位置尝试下一根木棒时,要跳过所有长度为s的木棒)2)如果由于以后的拼接失
ACMer_hades
·
2015-07-26 17:49
搜索题
【暴力搜索】[POJ 1011]
Sticks
首先这道题目有两个非常重要的剪枝1、如果当前放的是木块的第一个那如果当前dfs不成立,那么直接返回false因为每一个木板必定属于一个块,当他放第一个的时候如果可以放其他的其实是已经固定了的了,如果当前不成立那么不存在队友可以和他一起站对。2、就是如果当前这个和前一次进行dfs的木板长度一样,就跳过。#include #include #include usingnamespacestd; con
JeremyGJY
·
2015-07-24 16:00
poj
暴力搜索
ZOJ 3434 Hiiragi's
Sticks
Hiiragi'sSticksTimeLimit: 3Seconds MemoryLimit: 65536KBHiiragilikescollectingsticks.Itissaidthatshehascollected m shortsticks.Oneday,shewasveryexcitedthatshefoundmoresticksfromaboxunderherbed.Thes
wust_ZJX
·
2015-07-24 09:00
【DFS搜索】poj1011
Sticks
题目描述:给定n个小木棍,将他们接成长度相等的若干根。求接成的木棍长度最小值。很明显这是一道dfs搜索题。很容易想到所求的值在最长小木棍和小木棍总长度中间。注意不能用二分答案,因为不具有单调性。只能靠剪枝了。然而这道题处处都要剪枝才能AC,不愧是经典搜索好题==剪枝一:答案在最长小木棍和小木棍总长度中间,且是总长度的因数。(否则不能接成长度相等的若干根)。剪枝二:先将小木棍长度从大到小sort一下
cqbztsy
·
2015-07-23 08:00
搜索
DFS
POJ1011
POJ-1011-
Sticks
-DFS(深搜)+四次剪枝
题目链接:http://poj.org/problem?id=1011这个题目很经典,剪枝很巧妙,可以好好的研究一下,多做几次,很有价值;#include #include #include #include #include #include #include #include #include #include #defineLLlonglong usingnamespacestd; /* 枚
wlxsq
·
2015-07-22 11:00
剪枝
DFS深搜
POJ1011
HDU-1147-Pick-up
sticks
#include #include #include #include #include #include #include #include #include usingnamespacestd; /* 这道题其实和1086是一样的题目,都是判断线段是否相交; 但是这道题换了一个问你的方式;他告诉你他依次放木棍的次序; 并且告诉你木棍的坐标,问你没有被压着的木棍有哪几个,并且按先放的先输出; 思
wlxsq
·
2015-07-14 12:00
计算几何
Sticks
Pick-up
HDU1147
线段相交问题
10003 - Cutting
Sticks
(DP)
类似于最优矩阵链乘,将长区间划分成段区间求解,换句话说:长区间依赖于段区间。因此如果利用三重循环递推的话,枚举的顺序应该是木棍的长度从小到大,因为长区间依赖于短区间的最优解。所以动态规划的重点我认为就是对状态的定义和动态规划的方向, 状态的定义要确保覆盖所有状态,规划的方向要遵循一个状态依赖于另一个早已解决的状态。 所以该题有两种解决方法:记忆化搜索和递推。我分别用这两种方法AC了,记忆化搜索更
weizhuwyzc000
·
2015-07-12 11:00
ACM
uva
hdu 1051 Wooden
Sticks
(贪心)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1051经典的贪心题,按照l,w排好序后进行扫描标记,注意逻辑即可。#include #include #include #include usingnamespacestd; structstick{ intl,w,tag; booloperator>t; while(t--){ intn,sum=0; s
theArcticOcean
·
2015-07-11 21:00
HDU
Sticks
(Central Europe 1995)
DescriptionGeorgetooksticksofthesamelengthandcutthemrandomlyuntilallpartsbecameatmost50unitslong.Nowhewantstoreturnstickstotheoriginalstate,butheforgothowmanystickshehadoriginallyandhowlongtheywereori
wJs9528-1
·
2015-07-09 21:23
===搜索===
暑假集训专题
Sticks
(Central Europe 1995)
DescriptionGeorgetooksticksofthesamelengthandcutthemrandomlyuntilallpartsbecameatmost50unitslong.Nowhewantstoreturnstickstotheoriginalstate,butheforgothowmanystickshehadoriginallyandhowlongtheywereori
Forever_wjs
·
2015-07-09 21:00
POJ 1065 && HDU 1051 Wooden
Sticks
(贪心)
Description有一些木材和一台机器。机器每次加工一根木材需要的时间是1,但是当加工木材的长度和宽度都小于等于前一根木材的时候,不需要时间。求最少需要多少时间加工完所有的木材Input第一行为数据组数t,每组用例第一行为木材数量n,然后是每根木材的长度和宽度Output对于每组用例,输出最短加工时间SampleInput35495221351432211223132231SampleOutp
V5ZSQ
·
2015-07-07 15:00
poj 1011
sticks
经典剪枝问题
SticksTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 127727 Accepted: 29912DescriptionGeorgetooksticksofthesamelengthandcutthemrandomlyuntilallpartsbecameatmost50unitslong.Nowhewantstoreturnst
wust_ZJX
·
2015-07-06 13:00
POJ 1011
Sticks
(dfs)
Description乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位。然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度。请你设计一个程序,帮助乔治计算木棒的可能最小长度。每一节木棍的长度都用大于零的整数表示Input多组输入,每组数据包括两行。第一行是一个不超过64的整数,表示砍断之后共有多少节木棍。第二行是截断以后,所得到
V5ZSQ
·
2015-06-19 17:00
HDU3939
Sticks
and Right Triangle 毕达哥拉斯三元组+容斥原理
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3939题目大意:给出一个n,找出不超过n的毕达哥拉斯三元组的数目。分析:这题和POJ1305差不多,只是数据范围大了一些(n为10^12),显然我们不能再去暴力枚举了。大致看一下m和n的范围可知,mlim,我们可以对m进行素因子分解,然后通过容斥原理来计算[1,lim)内与m互素的数的个数,这点可以参考
AC_Gibson
·
2015-06-17 14:00
HDU Wooden
Sticks
(贪心)
WoodenSticksTimeLimit:2000/1000ms(Java/Other) MemoryLimit:65536/32768K(Java/Other)TotalSubmission(s):19 AcceptedSubmission(s):7Font:TimesNewRoman|Verdana|GeorgiaFontSize:←→ProblemDescriptionTherei
zp___waj
·
2015-06-14 21:00
BZOJ 2529 Poi2011
Sticks
题目大意:给定n(n≤106)根木棍,每根木棍有一个长度,求是否存在三根颜色不同的木棍能构成一个面积为正的三角形枚举最长的那根木棍,由于能够成三角形的充要条件是两短边和大于第三边,因此短边越长越好因此维护[1,i]集合中最长的三根颜色不同的木棍即可#include #include #include #include #defineM1001001 usingnamespacestd; intk,
PoPoQQQ
·
2015-06-11 21:00
bzoj
BZOJ2529
[POI 2011]
Sticks
(乱搞)
题目链接http://main.edu.pl/en/archive/oi/18/pat题目大意给你k种颜色,每种颜色有一些木棍,给出每种木棍的长度和颜色,问是否能选出三根颜色互不相同的木棍,构成一个三角形思路我们可以把所有的木棍丢到一起,按照长度升序排序,然后枚举前i根木棍,维护其中的长度最大的三根颜色互不相同的木棍,然后判断这三根木棍是否能构成三角形。实际上就是在枚举长度最长的那根木棍,显然另外
qpswwww
·
2015-06-11 21:00
10003-Cutting
sticks
You have to cut a wood stick into pieces. The most affordable company, The Analog Cutting Machinery,Inc. (ACM), charges money according to the length of the stick being cut. Their procedure of workreq
SD_Sunny_hui
·
2015-05-29 23:00
UVA10003---Cutting
Sticks
(简单区间dp)
任意两个切割点之间无法再分割所以如果设dp[i][j]表示从i位置切到j位置其实没有多大意义,亲测这样会TLEdp[i][j]表示切割第i个切割点开始的位置到第j个切割点的位置结束的木棍的最小花费时间复杂度O(n3)/*************************************************************************>FileName:uva10003
Guard_Mine
·
2015-05-21 21:00
dp
POJ2452---
Sticks
Problem(单调栈+RMQ,方法不够优秀)
DescriptionXuanxuanhasnsticksofdifferentlength.Oneday,sheputsallhersticksinaline,representedbyS1,S2,S3,…Sn.AftermeasuringthelengthofeachstickSk(1FileName:POJ2452.cpp>Author:ALex>Mail:
[email protected]
Guard_Mine
·
2015-05-15 18:00
RMQ
单调栈
POJ-1011(
Sticks
)
DescriptionGeorgetooksticksofthesamelengthandcutthemrandomlyuntilallpartsbecameatmost50unitslong.Nowhewantstoreturnstickstotheoriginalstate,butheforgothowmanystickshehadoriginallyandhowlongtheywereori
panjf2000
·
2015-05-11 19:00
poj
刷题
POJ - 1011 -
Sticks
(DFS + 剪枝)
题目传送:
Sticks
思路:DFS+剪枝AC代码:#include #include #include #include #include #include #include #include #include
u014355480
·
2015-05-06 00:00
ACM
poj
DFS
剪枝
hdu 5203 Rikka with wood
sticks
(Bestcoder Round #37)
RikkawithwoodsticksTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):446 AcceptedSubmission(s):130ProblemDescriptionAsweknow,Rikkaispooratmath.Yutaisworr
caduca
·
2015-04-12 17:00
Algorithm
编程
ACM
BestCoder
HDU 5203 Rikka with wood
sticks
题目大意:有一根长度为 n 的木棍,这个木棍是由 n 个长度为 1 的小木棍拼接而成,当然由于时间放置的久了,一些小木棍已经不牢固了,所以勇太想让六花把这个木 棍分成正整数长度的 4 段,其中有 3 段要没有不牢固的小木棍,勇太希望这 3 段木棍的长度和可以最大。同时六花希望在满足勇太要求的情况下让这三根木棍能拼成一 个三角形,请问萌萌哒六花有多少种可行的分割方案呢?解题思路:先求
kl28978113
·
2015-04-11 23:00
hdu 5203 Rikka with wood
sticks
(暴力枚举边)
题意:一段长度为n的木块有n个长度为一的木块构成,现在给出m个不坚固的木块,现在要将原木块分成4份,并且其中三份不能包含不坚固的木块,并且这三份要尽量长,这三份要能构成三角形。问分割的方案数。题解:这题三份不能包含不坚固木块,那么其中一份肯定要包含所有木块,于是这要扣掉这一个份,问题就转化成两块木块分成三份或者一块木块分成三份能构成三角形的方案数。对于第一种情况,两个木块分成三份:直接枚举其中一块
My_ACM_Dream
·
2015-04-11 21:00
BestCoder #37 Rikka with wood
sticks
DFS暴力
TimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):92 AcceptedSubmission(s):23ProblemDescriptionAsweknow,Rikkaispooratmath.Yutaisworryingaboutthissituatio
wr132
·
2015-04-11 21:00
with
DFS
暴力
Wood
BestCoder
Rikka
Stic
#37
【贪心专题】HDU 1051 Wooden
Sticks
(切割木棍)
链接:clickhere~~题目大意:给n根木棍的长度和重量。根据要求求出制作木棍的最短时间。建立第一个木棍需要1分钟,若是接着要制作的木棍重量和长度都比此木棍长就不需要建立的时间,若是没有,则再需要建立时间。求时间最小为多少。【解题思路】对木棍的长度和重量进行排序,以长度为首要考虑(也可以先考虑重量)。于是,我们对排序后的数组进行多次扫描,在一次建立时间内完成的进行标记,直到木棍全部标记(设置一
u013050857
·
2015-04-07 13:00
ACM
贪心
【深搜加剪枝】【HDU1455】【
Sticks
】
题目大意:有一堆木棍由几个相同长的木棍截出来的,求那几个相同长的木棍最短能有多短?深搜+剪枝具体看代码#include #include #include #include #include #include #include #include #include #defineoo0x13131313 usingnamespacestd; intN,M; intA[100],Max=-1,Sum,
zy691357966
·
2015-03-31 14:00
POJ 1011
Sticks
(搜索剪枝)
有以下几个剪枝,按难度排序:下文‘部分’代表切割后的小棒子1.做假设的长度一定可以整除所有部分长度之和2.当选择一个部分刚好能把现在组合的这根棒子补全,而之后的棒子无法补全时,直接返回false,不需要试其他部分。因为如果不选这个部分,想把当前棒子补全,需要选其他几个长度和等于这个部分的小棒子,这样留下的局面比直接选初始的那个部分更差。3.当刚开始拼接一个棒子时,如果选择某个部分,然后之后的搜索返
Baoli1008
·
2015-03-31 12:00
剪枝
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
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
其他