UVA 12299 - RMQ with Shifts
题目链接
题意:给定一个数组,两种操作,每次query操作输出区间最小值,每次shift操作把选中位置每个位置向左移一位,最左的到最后去
思路:线段树,shift操作中位置个数不会超过30个,那么直接当作点修改来做,那么就变成了简单的线段树了
代码:
#include
#include
#include
u...
分类:
其他好文 时间:
2014-07-30 20:56:34
阅读次数:
331
大数相乘。很久之前写过大数相加的代码,很繁琐,当时想着大数相乘其实和大数相加差不多,于是乎就略过了。。
可是当你真的写的时候才会注意到出现的问题,就比如前置0的问题忽略了。
还有以后注意写的代码格式,还有注释。。。这次又没有写!!唉。。懒!...
分类:
其他好文 时间:
2014-07-30 20:56:04
阅读次数:
267
注明:
本题使用了两种解法,第一种参考了网上一种非常普遍的解法,即使用atof函数将两个数字字符串转化为两个浮点数,然后直接和int的最大值比较即可。这种方法较简单,不过也是在数据较小的情况下行得通。而第二种是我自己写的一种更较为普遍的解法,其实也就是直接根据字符串进行高精度的运算而已。自己用了很多数据进行测试都没有错,可是就是AC不了,不知道为什么。希望大神指教!!!
题目:
...
分类:
其他好文 时间:
2014-07-30 20:52:04
阅读次数:
278
一个字符串的游戏 有一个你不知道的字符串 你开始有7条命 然后你每次猜一个字母 若你猜的字母在原字符串中 原字符串就去掉所有那个字母 否则你失去一条命 如果你在命耗完之前原字符串中所有的字母都被猜出 则你赢 如果你在命耗完了原字符串中还有字母没被猜出 则你输 如果你在命没耗完原字符串中也还有字母没被猜出 视为你放弃
给你另一个字符串作为你猜的顺序 判断你是否能赢:...
分类:
其他好文 时间:
2014-07-30 20:51:25
阅读次数:
235
Frequent values
TimeLimit:3000Ms
You are given a sequence of n integers a1 , a2 , ... , an in non-decreasing order. In addition to that, you are given several queries consisting of indices...
分类:
其他好文 时间:
2014-07-30 20:51:23
阅读次数:
507
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...
分类:
其他好文 时间:
2014-07-30 20:44:04
阅读次数:
263
还是最长上升子序列。。。本题是求队列中任一士兵都能从左边或者右边看到队伍外;即某一士兵左边为上升子序列,右边为下降子序列。求两个序列和,再用总数减去; 1 #include 2 #include 3 #include 4 #include 5 #define maxn 1005 6 usin...
分类:
其他好文 时间:
2014-07-30 20:25:45
阅读次数:
185
Ancient Cipher
Ancient Roman empire had a strong government system with various departments, including a secret service department. Important documents were sent between provinces and the capit...
分类:
其他好文 时间:
2014-07-30 17:35:14
阅读次数:
227
UVA 11525 - Permutation
题目链接
题意:给定一个k个数字,求第n个全排列,由于n很大,输入的方式为∑k1Si?(K?i)!
思路:全排列,很容易看出,前面的si对应的就是数组中第k小的数字,那么问题变成每次找第k小的数字,然后去掉这个数字,这个用树状数组很容易实现
代码:
#include
#include
#define lowbit(...
分类:
其他好文 时间:
2014-07-30 17:25:44
阅读次数:
167
UVA 1513 - Movie collection
题目链接
题意:有一些光盘,一开始是n-1叠上去的(1最顶),现在每次抽出一张,要问这一张上面有多少张,然后把抽出来这张放到最顶,输出每次询问
思路:树状数组,数组维护每个位置下面有多少张光碟,这样每次拿出一张,就在相应位置-1就可以了,然后在最顶位置上多一个位置+1
代码:
#include
#include...
分类:
其他好文 时间:
2014-07-30 14:45:33
阅读次数:
186