随笔分类 - 模拟
CodeForces 709A Juicer (水题, 模拟)
摘要:题意:给定 n 个桔子的大小,一个杯子的容积,一个最大限度,挨着挤桔子汁,如果大小大于限度,扔掉,如果不杯子满了倒掉,问你要倒掉多少杯。 析:直接按要求模拟就好,满了就清空杯子。 代码如下:
阅读全文
UVaLive 6805 Pantun Grader (恶心的模拟)
摘要:题意:给定 n 首诗,然后让你给他打分,有四种规则,第一种是按音节打,如果音节在8-12之间,就加10,第二种就是按押韵打,如果13,24一个押韵就加20分。 第三种按音节数打,13,24有一个一样的就加10分,第四种是扣分的,如果多于4段,扣10分。 析:按照他说的来,就好,这个输入就挺恶心的,好
阅读全文
UVaLive 6809 Spokes Wheel (模拟)
摘要:题意:给定两个16进制数,问你把它转成二进制后,把第一个向左或者向右旋转最少的次数同,使得第一个变成第二个。 析:也是比较水的,按照要求做就好,注意0的情况,可能会忘记。
阅读全文
UVaLive 6802 Turtle Graphics (水题,模拟)
摘要:题意:给定一个坐标,和一行命令,按照命令走,问你有多少点会被访问超过一次。 析:很简单么,按命令模拟就好,注意有的点可能走了多次,只能记作一次。 代码如下:
阅读全文
UVALive 6692 Lucky Number (思路 + 枚举)
摘要:题意:给你n 个数字,某一个数的幸运数是这个数前面比他小 离他最远的位置之差,求出最大幸运值。 析:先按从大到小排序,然后去维护那个最大的id,一直比较,更新最大值就好。 代码如下:
阅读全文
CodeForces 710C Magic Odd Square (n阶奇幻方)
摘要:题意:给它定一个n,让你输出一个n*n的矩阵,使得整个矩阵,每行,每列,对角线和都是奇数。 析:这个题可以用n阶奇幻方来解决,当然也可以不用,如果不懂,请看:http://www.cnblogs.com/dwtfukgv/articles/5797527.html 剩下的就很简单了。 代码如下:
阅读全文
URAL 2073 Log Files (模拟)
摘要:题意:给定 n 场比赛让你把名称,时间,比赛情况按要求输出。 析:很简单么,按照要求输出就好,注意如果曾经AC的题再交错了,结果也是AC的。 代码如下:
阅读全文
UVaLive 7375 Hilbert Sort (递归,四分图,模拟)
摘要:题意:告诉你一条希尔伯特曲线的大小,然后给你n 个人,及n 个人的坐标,你的起点是左下角,终点是右下角,按照希尔伯特的曲线去走,按照这个顺序给n个人排序, 按顺序输出每个人的名字! 析:这就是一个四分图,每次都把当前的图分成四份,左下角的是顺时针旋转,左上角和右上角不变,右下角逆时针旋转90,那么我
阅读全文
HDU 4431 Mahjong (DFS,暴力枚举,剪枝)
摘要:题意:给定 13 张麻将牌,问你是不是“听”牌,如果是输出“听”哪张。 析:这个题,很明显的暴力,就是在原来的基础上再放上一张牌,看看是不是能胡,想法很简单,也比较好实现,结果就是TLE,一直TLE,这不科学啊。。。 好不容易写出来的,竟然TLE。。。心痛。就是先确定一个将牌,然后再对刻子和顺子进行
阅读全文
CodeForces 548B Mike and Fun (模拟)
摘要:题意:给定一个n*m的矩阵,都是01矩阵,然后每次一个询问,改变一个格的值,然后问你最大有数是多少。 析:就是按他说的模拟,要预处理,只要把每行的最大值记下来,当改变时,再更新这一行的最大值。 代码如下:
阅读全文
POJ 3672 Long Distance Racing (模拟)
摘要:题意:给定一串字符,u表示是上坡,d表示下坡,f表示平坦的,每个有不同的花费时间,问你从开始走,最远能走到。 析:直接模拟就好了,没什么可说的,就是记下时间时要记双倍的,因为要返回来的。 代码如下:
阅读全文
CodeForces 705C Thor (模拟+STL)
摘要:题意:给定三个操作,1,是x应用产生一个通知,2,是把所有x的通知读完,3,是把前x个通知读完,问你每次操作后未读的通知。 析:这个题数据有点大,但可以用STL中的队列和set来模拟这个过程用q来标记是哪个应用产生的,用set来记录是第几个通知. 代码如下:
阅读全文
HDU 5437 Alisha’s Party (优先队列模拟)
摘要:题意:邀请k个朋友,每个朋友带有礼物价值不一,m次开门,每次开门让一定人数p(如果门外人数少于p,全都进去)进来,当最后所有人都到了还会再开一次门,让还没进来的人进来,每次都是礼物价值高的人先进。最后给出q个数,表示要输出第ni个进来的人的名字。 析:其实这就是一个模拟题,很容易知道是优先队列模拟,
阅读全文
CodeForces 681C Heap Operations (模拟题,优先队列)
摘要:题意:给定 n 个按顺序的命令,但是可能有的命令不全,让你补全所有的命令,并且要求让总数最少。 析:没什么好说的,直接用优先队列模拟就行,insert,直接放入就行了,removeMin,就得判断一下队列是不是空的,然后再考虑getMin,这个是不是对应的值,如果队列中首元素比它大,那么就加上一个,
阅读全文
CodeForces 339B Xenia and Ringroad(水题模拟)
摘要:题意:给定 n 个地方,然后再给 m 个任务,每个任务必须在规定的地方完成,并且必须按顺序完成,问你最少时间。 析:没什么可说的,就是模拟,记录当前的位置,然后去找和下一个位置相差多长时间,然后更新当前位置即可。 代码如下:
阅读全文
CodeForces 342B Xenia and Spies (水题模拟,贪心)
摘要:题意:给定 n 个间谍,m个区间,一个 s,一个f,然后从 s开始传纸条,然后传到 f,然后在每个 t 时间在区间内的不能传,问你最少的时间传过去。 析:这个题,就模拟一下就好,贪心策略,能传就传,找好方向,一直传就行,传到 f 就结束。 代码如下:
阅读全文
CoderForces 518C Anya and Smartphone (模拟)
摘要:题意:给定一个手机,然后一共有 n 个app,告诉你每个屏幕最多放 k 个,现在要你运行 m 个app,每次都从第一个屏幕开始滑动,每运行一个,它就和前一个交换位置,第一个就不换了,现在问你要滑动多少次。 析:这个题,没什么算法,就是模拟呗,不过要注意时间,不能TLE,所以我们就得提前把所有的位置都
阅读全文
CodeForces 686A Free Ice Cream (水题模拟)
摘要:题意:给定初始数量的冰激凌,然后n个操作,如果是“+”,那么数量就会增加,如果是“-”,如果现有的数量大于等于要减的数量,那么就减掉,如果小于, 那么孩子就会离家。问你最后剩下多少冰激凌,和出走的孩子数量。 析:多水的一个题,就是一个模拟,如果是+,就加上,如果是‘-’,就判断一下,如果不够,就记录
阅读全文
UVa 210 Concurrency Simulator (双端队列+模拟)
摘要:题意:给定n个程序,每种程序有五种操作,分别为 var = constant(赋值),print var (打印), lock, unlock,end。 变量用小写字母表示,初始化为0,为程序所公有(一个程序里对某个变量修改可以会影响其他程序里的这个变量), 常数小于100(也就是说最多两位数)。
阅读全文
UVa 11039 Building designing (贪心+排序+模拟)
摘要:题意:给定n个非0绝对值不相同的数,让他们排成一列,符号交替但绝对值递增,求最长的序列长度。 析:我个去简单啊,也就是个水题。首先先把他们的绝对值按递增的顺序排序,然后呢,挨着扫一遍,只有符号不同才计数,easy!!! 代码如下:
阅读全文