acm
acm
HackerTom
https://github.com/iTomxy
展开
-
UVa 12955 Factorial
后来想:1! =1 啊,所以肯定能用 1! 补充 n 减去其它阶乘剩下的数题目相当于:某种货币有面值分别为 1! 、 2! 、…、15! 的钞票,要买价格为 n 的物品,最少要多少张钞票…原创 2016-06-01 16:14:19 · 903 阅读 · 0 评论 -
UVa 12504 Updating a Dictionary
Problumuva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3948Source Code#include #include #include typedef struct{ char chg; char key[100],val[100];原创 2016-05-14 11:23:00 · 418 阅读 · 0 评论 -
hdu 5831 Rikka with Parenthesis II 2016 Multi-University 8
给个括号序列,问能不能通过一次把两个不同位置的符号交换的操作,使得序列里的所有括号左右配对合法左括号进栈,如果是右括号而且栈顶是左括号,就两个一起弹出题目要求一定有且只有一次操作原创 2016-08-12 18:34:42 · 473 阅读 · 0 评论 -
hdu 5821 Ball 2016 Multi-University 8
给两个长度为 n 的数的序列 a 和 b,问 a 能不能在 m 次操作后变成 b每次操作都是给个区间 [ l,r ],把此区间的所有数拿出来然后任意重排后放回去原创 2016-08-12 17:27:14 · 328 阅读 · 0 评论 -
hdu 1556 Color the ball
hdu 1556 Color the ball题目是说多次给区间 [ a ,b ] 的每一个气球涂一次色,最后问每一个气球分别总共被涂了多少次色用一个数组记录增量,每次读入一区间左、右端点后,左端点位置(记为a)的增量 +1,右端点位置(记为b)的下一个位置(b+1)的增量 -1原创 2016-10-16 22:22:24 · 402 阅读 · 0 评论 -
codeforces 706 C. Hard problem #367 div2
顺序给出 n 个字符串,不能交换顺序,但每个串都可以反转(reverse),代价为 ci,问能不能使得这些字符串从前往后字典序是从小到大的,并算出最小代价dp[2][n] 记录代价,dp[0][] 表示第不反转的情况,dp[1][] 是反转的情况原创 2016-08-13 01:19:03 · 409 阅读 · 0 评论 -
hdu 5826 physics 2016 Multi-University 8
n 个球在光滑轨道上直线运动,任意事刻都满足:a * v = c,a 是加速度,v 是速度,c 是给定常数,且碰撞时弹性碰撞q 个询问,问开始后的 t 时刻,所有球的速度中第 k 小的速度大小弹性碰撞,速度交换,a * v = c,所以 a 也跟着 v “交换”,所以直接看成是穿过对方继续向前运动,初始位置、方向都没用原创 2016-08-12 17:59:35 · 358 阅读 · 0 评论 -
hdu 5792 World is Exploding 2016 Multi-University 5
给一个序列 V,问有多少个由下标组成的四元组(a,b,c,d),满足:a != b != c != d,a < b,c < d, Va < Vb,Vc > Vd先把所有顺序数对的个数、逆序数对的个数找出来相乘,然后再去掉不符合下标大小关系的原创 2016-08-03 22:27:32 · 540 阅读 · 0 评论 -
hdu 5748 Bellovin BestCoder #84 1002
要重构一个序列 b1,b2,…,bn以对应位置的值 ai 和 bi 结尾的 LIS 的长度一样,而且b序列的字典序要最小新构造的 b 序列的对应值 bi 要和它有同样的 LIS 长度,就应该处在装 b 的数组的同一个位置 p 上b 数组应该是随着 a 数组的拓展而拓展的原创 2016-07-24 23:39:37 · 482 阅读 · 0 评论 -
hdu 5120 Intersection
求两个一样的圆环的相交部分的面积原创 2016-07-19 01:31:34 · 508 阅读 · 0 评论 -
LightOJ 1045 Digits of Factorial
Problem:acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=26765分析:在base进制下,pow ( base , x ) 表示最小的 x+1 位数,pow ( base , x ) -1 表示最大的 x 位数所以base进制下 x 位数的范围是 [ pow ( base , x-1 ) , pow ( base ,原创 2016-06-01 17:17:00 · 382 阅读 · 0 评论 -
UVa 12506 Shortest Names
题目:uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3950DescriptionIn a strange village, people have very long names. For example: aaaaa, bbb and abababab.原创 2016-05-13 20:39:35 · 774 阅读 · 0 评论 -
hdu 5818 Joint Stacks 2016 Multi-University 7
hdu 5818 Joint Stacks 2016 Multi-University Training Contest 7两个栈,支持push、pop、merge 3种操作push x y :把 y 压入栈 xpop x :栈 x 弹出一个元素,输出它的值merge x y :把 y 中的元素全部移到 x 中,并且保持所有元素的进栈时的先后顺序原创 2016-08-10 17:53:35 · 458 阅读 · 0 评论 -
poj 2528 Mayor's posters
poj 2528 Mayor's posters离散化要注意一个细节有个数组不知道为什么要开那么大还有,update() 和 query() 的时候用左闭右开形式的区间错了好多次,后来换成闭区间的形式才过的原创 2016-12-28 15:06:52 · 298 阅读 · 0 评论 -
ZOJ 1610 Count the Colors
线段树成段更新第一点,题中给出的边界是线段的两个端点,也就是说每个标号表示一个点而不是一个小线段。于是我采用标号表示它右边的一段,所以输入“x1 x2 c”,我处理成:update(x1, x2-1, c, ...)。第二点,连在一起的两段同色段要合并成一大段,但不能简单写个 pushup() 来完成,因为两个同色段可能分在两个结点所管的区间内,但又没有结点所管的区间那么长,所以会出现漏合并的情况。于是多开一个 col 数组,在 query 的时侯,把更新完的最后结果都放进这个数组中,然后再用一个循环原创 2016-12-31 18:57:48 · 335 阅读 · 0 评论 -
hdu 4027 Can you answer these queries?
题意:给一列值,每次操作要么更新都使得区间 [ left , right ] 内的每一个值都变成原来的平方根(再向下取整);要么询问区间 [ left , right ] 的值的总和。分析:这种更新不像以前见的成段更新,因为区间内每个值的变化都不一样。考虑到:1开方之后还是1,所以一个区间如果所有值都小于等于1(没说一定大于0…但按题意应该是把…)的时侯就不用再往下更新。题目说总和不超过 2^63,就算 2^64,最多开 7 次方就到 1(所以是不会太耗时的意思吧?)原创 2017-01-03 14:44:07 · 314 阅读 · 0 评论 -
hdu 2018 母牛的故事
题目:acm.hdu.edu.cn/showproblem.php?pid=2018解一:模拟每年生育情况#include int main(){ int n,i,mature,one,two,three; while(~scanf("%d",&n) && n) { for(mature=i=1,one=two=three=0;i<n;i++) { mature原创 2016-05-13 19:06:35 · 410 阅读 · 0 评论 -
14th GDCPC J. Just another binary tree
J. Just Another Binary TreeInput file: stdin Output file: stdoutDescriptionMike is familiar with binary tree.Mike likes to store binary trees into an array, from 1 to n, which means1. 1 i原创 2016-05-13 16:54:05 · 387 阅读 · 0 评论 -
LightOJ 1220 Mysterious Bacteria
Problem: LightOJ 1220 Mysterious Bacteria题意:输入一个 x(2 <= |x| <= 2^32),求满足 x=b^p 的最大的 p(x,b,p都是整数)暴力版:枚举b或者枚举p,然后求另外一个枚举b只要从小到大枚举 [ 2,2^16 ] 范围,如果还不出答案,说明有在(2^16,2^32)的大质因子,答案是1枚举p就从大到小枚举 [ 32,2 ] 范围,然后二分找b,没出答案就同上原创 2016-07-18 11:15:32 · 767 阅读 · 0 评论 -
hdu 1540 Tunnel Warfare
n个村庄连成一条线,有3种操作:D x:摧毁编号为 x 的村庄Q x:询问与编号为 x 的村庄相连的村庄的数量(包括 x 自身)R:修复最近一次被摧毁的那个村庄(恢复与相邻村庄的连接)原创 2017-01-09 20:03:58 · 312 阅读 · 0 评论 -
hdu 1058 Humble Numbers
Problemacm.hdu.edu.cn/showproblem.php?pid=1058题意找出从小到大第 n 个因子(除了 1 和本身)只有 2、3、5、7 的数。即第 n 个 num = 2^a * 3^b * 5^c * 7^d 的数(据说叫丑数)。分析从 1 开始,乘2、3、5、7中的随便一个,就产生 4 个这样的数;从这 4 个数出发,分别乘2、3、5、7,再原创 2017-01-15 01:23:31 · 444 阅读 · 0 评论 -
hdu 3974 Assign the task
n 个员工之间的上司下属关系成一棵树,每个员工有一个上司(老板除外)和零个或多个下属。有两种操作:C x:询问编号为 x 的员工当前的工作T x y:给编号为 x 的员工分配新工作 y当员工被分配新工作时,旧工作被覆盖;该员工和他所有的下属(包扩下属的下属)同时被分配这个新工作(一次改整棵子树)。原创 2017-01-10 21:10:24 · 367 阅读 · 0 评论 -
hdu 2126 Buy the souvenirs
Problemacm.hdu.edu.cn/showproblem.php?pid=2126题意n 种物品,m 元钱,每种只能买一个,要求在能买得到的最多物品种类的方案数分析在用 dp 求最多种类数时,顺便记录方案数。求最多种类数就是 0/1 背包。当买下新物品可以取得更多种类数时,要同时更新方案数;如果钱数相同,买下新物品和不买有相同种类数,说明找到买这么多种物品的新原创 2017-01-16 16:07:13 · 345 阅读 · 0 评论 -
hdu 1059 Dividing
Problemacm.hdu.edu.cn/showproblem.php?pid=1059题意6 种宝石,价值分别是 1 到 6。分别给出 6 种宝石的数量,问能不能分成等价值的两堆。分析多重背包。主要是记录下多重背包的写法。对每一种宝石,如果这种宝石的总价值超过所有宝石总价值的一半(因为要对半分),就对它跑一遍完全背包;否则,将这种宝石的数量拆开成:num =原创 2017-01-16 16:28:31 · 397 阅读 · 0 评论 -
URAL 2072 Kirill the Gardener 3
一行 n 朵花,每朵有个饥渴系数,园丁要按饥渴系数升序地浇完所有花,他一开始站在最左边那朵花那里。每朵花要浇 1 个时间,从位置 i 走到位置 j 要花 abs( i - j ) 个时间,问按要求浇完所有花的最短时间。原创 2017-02-16 20:27:02 · 790 阅读 · 0 评论 -
URAL 2070 Interesting Numbers
条件1:质数。条件2:不一定是质数,但因子个数(包括1和本身)是质数的数。求 [ L , R ] 内同时满足或同时不满足两个条件的数的个数。原创 2017-02-16 23:02:50 · 413 阅读 · 0 评论 -
poj 1742 Coins
分别给出 n 种面值为 ai 的硬币 ci 个,问用这些硬币可以组成的 [ 1, m ] 中的多少种金额。原创 2017-02-19 15:20:21 · 374 阅读 · 0 评论 -
hdu 1074 Doing Homework
n 份作业,分别给出名字、完成所需时间 cost、最迟上交时间 deadline。作业每迟交一天扣一分。问最少的扣分数。原创 2017-02-28 17:39:35 · 408 阅读 · 0 评论 -
hdu 1024 Max Sum Plus Plus
Problemacm.hdu.edu.cn/showproblem.php?pid=1024题意给一个长为 n 的序列,有从中挑 m 个相互不重合的子序列求总和,让总和最大。分析(没能看懂百度的前几份题解…好像都跟 kuangbin 的写法差不多:www.cnblogs.com/kuangbin/archive/2011/08/04/2127085.html)下面是同学原创 2017-02-14 00:17:25 · 305 阅读 · 0 评论 -
ZOJ 3623 Battle Ships
要打倒一座血量为 L 的防御塔,问所需最短时间有 N 种战船可以无限制造,每种船给出制造时长 time [i] 和攻击力 lethality [i]每一秒都可以选择制造一艘其中一种战船,或者什么都不做。船造好了就一直攻击原创 2017-01-26 17:36:57 · 366 阅读 · 0 评论 -
codeforces 730 A Toda 2
有 n 个正整数,每次可以选其中的 2 ~ 5 个数来同时减掉 1,减到 0 之后可以继续减但值还是 0。要使得它们最终全部相等,并且让这个数尽量大。原创 2017-02-15 19:50:04 · 395 阅读 · 0 评论 -
codeforces 730 J Bottles
n 瓶水,每瓶水量 ai,容量 bi。要将所有水装到尽量少的瓶子内。每移动一单位的水要消耗一单位时间,在最少瓶子的前提下,问移动水所需的最短时间。原创 2017-02-15 20:36:57 · 606 阅读 · 0 评论 -
hdu 1078 FatMouse and Cheese
n * n 个洞,每个洞都放有 0 ~ 100 个芝士块。老鼠从 (0,0)出发,每次都能横着或竖着走最多 k 格,且要走到芝士块数比当前洞多的洞里。老鼠每次都吃完洞里的芝士块。问最多能吃多少块。原创 2017-03-03 19:10:15 · 323 阅读 · 0 评论 -
hdu 1069 Monkey and Banana
给 n 种块,每种无限多个,求能搭起来的最高的高度。每种块都是长方体,给出三维(x,y,z),每个块都可以任选一个面做底面。一个块能放在另一个块上面,当且仅当上面的块的底面的两维都分别 严格小于 下面的块的底面的两维。(最下面是地面,无限大)原创 2017-02-25 20:45:16 · 331 阅读 · 0 评论 -
codeforces 779 C Dishonest Sellers
有 n 个物品,每件今天 ai 元,一周后 bi 元。要全部都买,且今天至少买 k 个。问最小的花费。原创 2017-02-26 19:26:43 · 414 阅读 · 0 评论 -
hust 1017 Exact cover
给定一个 n * m 的 0/1 矩阵,问能不能从中抽取若干行组成一个新矩阵,使得新矩阵中每一列都恰好包含一个1(精确覆盖问题的定义)原创 2017-03-17 17:45:28 · 384 阅读 · 0 评论 -
zoj 3209 Treasure Map
要在 p 张矩形藏宝图碎片中选若干张,恰好铺满一张 n * m 的格子图,问最少需要几张。原创 2017-03-21 17:25:34 · 415 阅读 · 0 评论 -
蓝桥 T414 合并石子
一条直线上 n 堆石子,每次可以合并相邻两堆并形成新的一堆,花费为原来的两堆石子的石子数的和。求将 n 堆合并成一堆的最小总花费。原创 2017-04-07 21:18:22 · 501 阅读 · 0 评论 -
hdu 1080 Human Gene Functions
给出两个DNA序列 a[] 和 b[],可以任意添加空格,但不能空格对空格。求两串的最大相似度。原创 2017-03-13 19:52:01 · 275 阅读 · 0 评论 -
hdu 1438 钥匙计数之一
一把钥匙 n 个槽,槽深可为 1、2、3、4,至少有 3 种槽深,至少有两个连续的槽满足深度差为 3。求合法钥匙数。原创 2017-03-14 13:18:25 · 393 阅读 · 0 评论