ACM——杂题
懵懂记忆
这个作者很懒,什么都没留下…
展开
-
HDU—— 1017 A Mathematical Curiosity
题意:先输入一个数N然后会分N块输入,每块每次输入2个数,n,m,n=m=0时结束,当a和b满足0解题思路:模拟。原创 2014-11-15 13:40:17 · 454 阅读 · 0 评论 -
HDU—— 2057 A + B Again
题意:对十六进制进行加减运算。解题思路:看了网上的才知道c语言当中专门有十六进制八进制等的输入方式,无语了,起初自己写了一个WA,仔细检查后发现十六进制的长度不超过15位,int不行了,因为我用了pow(),所以想不出其他的了,看来还是要多看多练啊!Code:#include #include using namespace std;typedef long long LL;in转载 2014-12-11 09:39:09 · 518 阅读 · 0 评论 -
HDU—— 2352 Verdis Quo
题意:罗马数字的表示方法:原创 2014-11-18 21:05:44 · 448 阅读 · 0 评论 -
Codeforces Round #297 (Div. 2) —— A. Vitaliy and Pie
题意:n个房间,每两个相邻的房间之间有一道门,门的种类也许不同,所以对于不同的门要用相应的钥匙才能打开,并且只有打开房间i-1才能到房间i,不能跨越多个房间,如果不能打开当前门,可以购买对应的一个钥匙,直到到达最后一个门为止,问所需买的最小的钥匙数量,其中小写字母代表钥匙,大写字母代表门,n个房间,2*n-2个字符串长度。解题思路:起初用暴力,结果超时了,后面看了解题报告重新写了一份过了,在此原创 2015-03-27 10:46:46 · 516 阅读 · 0 评论 -
HDU—— 5159 Building Blocks
题意:解题思路:原创 2015-03-22 10:15:43 · 500 阅读 · 0 评论 -
UESTC 576 —— Journey
题意:遍历N个点,每个点都要作为起始点进行一次遍历且每个点都要找出一个最短的遍历路程,每个点至少访问一次(即可返回遍历),输出每个点的最短路程。解题思路:由于要把 N 个点都访问一遍,因而最优解必然要经过 N-1 条(种)边,且每条(种)边至少经过一次。最优解也最多经过 N-1 条(种)边,因为经过 N-1 条(种)边时,已经把 N 个点都访问至少一遍。因而可以枚举哪条边不走,之后终点必然原创 2015-03-30 17:34:32 · 402 阅读 · 0 评论 -
HDU—— 5174 Ferries Wheel
unique()函数是一个去重函数,STL中unique的函数 unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除。他是c++中的函数,所以头文件要加#include,具体用法如下: int num[100]; unique(num,mun+n)返回的是num去重后的尾地址,之所以说比不真正把重复的元素删除,其实是,该函数把重原创 2015-03-16 10:30:18 · 512 阅读 · 0 评论 -
The 9th UESTC Programming Contest Final——Easy Problem
题意:求所给公式ans的最大值。 n1 n2 n1 n2解题思路:由于n1+n2原创 2015-04-02 21:31:40 · 675 阅读 · 0 评论 -
The 13th UESTC Programming Contest Preliminary—— L - Lovely princess
题意:有n项工作,每项工作都有一个Vi和ai,表示当你的能量大于等于Vi值时才能去做这项工作,完成后能量增加ai,且完成过程中不消耗能量。如果要完成n项工作,最小的初始能量为多少。解题思路:将所有工作按照Vi从小到大排序,依次做任务既是最优情况,记sum[i] = a1+a2+......+ai,完成所有工作所需的最小初始能力值即为ans= max(vi-sum[i-1]),详细解释为:将每次原创 2015-03-31 19:57:49 · 512 阅读 · 0 评论 -
HDU—— 2060 Snooker
题意:斯诺克,规则为15个红球6个有色球,每个红球分值为1,其余有色球分值分别为:yellow(2), green(3), brown(4), blue(5), pink(6), black(7)规则为每打一个红球后需要打一个有色球,打进洞即可得分,当桌子上红球没有完全进洞前,每次在打进红球打进有色球之后需要经有色球拿出,直到红球全部进洞之后才不用讲有色球拿出,当桌子上没有红球之后,接着就将所原创 2014-12-08 16:39:49 · 1002 阅读 · 0 评论 -
HDU—— 2050 折线分割平面
题意:中文题目,自行理解。解题思路:首先从最简单的直线开始1、N条直线平分平面:第N条直线与前N-1条直线有N-1个交点,而每增加N个交点对应的就增加N+1个平面,所以f[n] = n*(n+1)/2+1;2、N对平行线相交当把直线改成平行线后,第N对平行线时,前面有2*(n-1)条直线,第2N-1条直线与前面的直线交点为2*(n-1),增加的平面数为2*(n-1)+1,所原创 2014-12-07 21:26:39 · 347 阅读 · 0 评论 -
HDU—— 5123 who is the best?
题意:N个人去投票,输出得票最多人的编号,若每个人的得票相同,输出编号最小的那个。解题思路:利用map函数直接暴力,详见代码。Code:#include #include #include using namespace std;mapvis;int main(){ //freopen("input.txt","r",stdin); int T,N,a;原创 2014-11-29 21:34:45 · 391 阅读 · 0 评论 -
HDU—— 1290 献给杭电五十周年校庆的礼物
题意:中文题目,自行理解。原创 2014-11-15 22:09:46 · 449 阅读 · 0 评论 -
HDU—— 1013 Digital Roots
题意:整数的树根,即当整数不为单独的数字时将各个位上的数字相加,直到为单个数字时输出此时的数字。解题思路:利用字符串进行处理,详见代码:原创 2014-11-15 12:43:16 · 368 阅读 · 0 评论 -
HDU—— 1005 Number Sequence
题意:f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7原创 2014-11-15 13:06:12 · 331 阅读 · 0 评论 -
HDU—— 1267 下沙的沙子有几粒?
题意:给你m个H和n个D,然后从左开始数H的累积个数总是不比D的累计数少的排列有多少种,例如:3个H和1个D总共有3种排列,依次是:H D H H,H H D H,H H H D三种排列。解题思路:假设这些串由m个H,和n个D所构成,那必然可以拆分成两个子问题.即组成的字符串最后一个字符是H还是D。如果是H则,这些串的个数和 m-1个H 和 n 个D构成的串的个数相等.如果原创 2014-11-15 21:46:20 · 429 阅读 · 0 评论 -
HDU—— 1012 u Calculate e
题意:根据公式计算在0~9之间的取值所得的e的值。解题思路:原创 2014-11-15 13:34:09 · 343 阅读 · 0 评论 -
HDU—— 1014 Uniform Generator
题意:duiy公式:seed(x+1) = [seed(x) + STEP] % MOD,原创 2014-11-15 15:07:35 · 371 阅读 · 0 评论 -
HDU—— 1061 Rightmost Digit
题意:给定一个N,求出N^N的个位上的值原创 2014-11-15 21:34:42 · 393 阅读 · 0 评论 -
HDU—— 4932 Miaomiao's Geometry
题意:求最大长度的线段覆盖使得这样长度的区间能够覆盖所有所给的点(所给的点必须处于区间两端)原创 2014-11-04 18:15:28 · 370 阅读 · 0 评论 -
The 13th UESTC Programming Contest Preliminary—— F - Fabricate equation
解题思路:思路:贪心。倒着扫描,遇到0就忽略,因为对应被减数的该位也设0就好;遇到9,这个特殊,因为比如290-191=99,后面进位后,9这个位也可以使得被减数与结果的该位相同,这样的情况需要两个条件:必须后面可以进位。假如减数那位为0,不论结果为什么,都无法产生进位。第二个条件是,被减数的前一位可以借位,也就是说9这种情况完成后,即便前面遇到减数那位为0,也不能再忽略,只能当一般情况处理。一般转载 2015-03-31 21:53:37 · 500 阅读 · 0 评论