Uva 12436 Rip Van Winkle's Code(区间更新,区间查询)

题意:对于长度为250000的区间,给了你四种操作:操作A,从st到ed这段区间内的数,分别加上1,2,...,st-ed+1。操作B,从st到ed这段区间内的数,分别加上,st-ed+1,st-ed,...,1。操作C,将st到ed这段区间内的数赋值成x。操作S,查询st到ed的这段区间内的数的...

2012-08-18 09:33:38

阅读数:2155

评论数:0

ZOJ 3626 Treasure Hunt I(树型DP+01背包)

题意:给一棵有n个结点的树,每个点有点权表示在这个点上的价值,每条边有边权表示走这条路所需要的时候,给一个时间m,问在时间m从点k出发再回到点k所能得到的最大的价值和。 #include #include #include using namespace std; const int N=...

2012-08-06 11:47:37

阅读数:945

评论数:0

UVA 12393 Non-negative Partial Sums

题意:给定一个长n的循环队列(n=0;(0 我们把原始序列扩充成2*n个数,如果在长度为n的子序列中,最小的和仍然大于开端的和,那么是满足条件的。用一个单调队列保存在长度为n的子序列中的递增的和。 #include #include #include using namespace st...

2012-08-06 11:43:31

阅读数:1166

评论数:0

uva 10916 Factstone Benchmark

题意:给你一个年份y,1960 取对数。 #include #include #include #include using namespace std; const int N=30; int a[N]; int main() { int cnt=1,num=0,k=4; ...

2011-12-03 00:05:38

阅读数:961

评论数:0

uva 846 Steps

题意: 有t组测试数据。要求为最少步得到给出的整数n。步长要求为:起步和停止的步长为一,每次只能在上次的基础上增加一,减少一或者不变。 #include #include #include #include using namespace std; const int N=700000;...

2011-12-02 23:16:47

阅读数:996

评论数:0

uva 573 The Snail

题意:有给测试数据,H,U,D,F。H表示墙的高度,U表示白天能爬多少,D表示晚上下降多少,F表示疲劳程序(表示每天爬的高度都会减少H*F%)。注意,蜗牛是不会往下爬的,白天能爬的距离小于0,那么它是会保持原来的高度,然后晚上下降D。要求输出,在第几天爬出,或者在第几天掉回原点。 数据的范围都在...

2011-12-02 22:11:09

阅读数:1243

评论数:0

uva 107 The Cat in the Hat

题意:给你一个数x,你将它除以(n+1)若干次后(m次),将得到k个1,给你这个数x,问最后在这个过程中,这些数中,不是1的数有多少个,这些数的总和是多少。 关键是得出n。可以得出一个等式log(x)*log(n)=log(k)*log(n+1)。 #include #include #i...

2011-12-02 20:44:40

阅读数:715

评论数:0

uva 591 Box of Bricks

题意:有n个数,问当把所有的数值均匀分配,需要移动多少个1. #include #include #include using namespace std; const int N=55; int iabs(int a){return a>0?a:-a;} int main() { ...

2011-12-02 18:11:42

阅读数:782

评论数:0

uva 10025 The ? 1 ? 2 ? ... ? n = k problem

题意:有t个数,对于每个数n,要你求出一个最小的k使得-1+(-)2+(-)3+(-).....k=n。 求出a[i]为i的前i项和。当我们把每一个加号变成减号的时候,都是减去一个偶数的。易得,从a[i]到-a[i]的每隔2的点都可以得到。那么我们只要找出一个前n项和大于等于这个数的数,然后判断...

2011-12-02 17:19:23

阅读数:1217

评论数:0

uva 621 Secret Research

题意:根据题目判断,然后输出对应字符。。 #include #include #include using namespace std; int main() { int n; scanf("%d",&n); while(n--) ...

2011-12-02 16:38:08

阅读数:894

评论数:0

uva 253 Cube painting

题意:两个六边形,第一个六边形由前6个字符表示,后一个六边形由后6个字符表示。问第一个六边形与第二个六边形是否相同(可以旋转)。(位置的编号见题目) 把每个面旋转到第一个面,然后第一个面与它对应的面不动再进行四次旋转,判断。 #include #include #include usin...

2011-12-02 16:20:26

阅读数:4188

评论数:11

uva 10161 Ant on a Chessboard

题意:给你一个足够大的棋盘,有一只蚂蚁按照一定的方式走,问你在时间t,它的坐标是多少。走的方式是,一上,一右,一下,一右,二上,二左。。。。 如果我们从对角线看呢,1 3 7 13 21 公差是1 2 4 6 8 首项为1,公差为2的等差数列的前n项和。首先找出对应的位置,用Lower_bou...

2011-12-02 13:47:57

阅读数:1151

评论数:0

uva 113 Power of Cryptography

题意:给出n和p,求k,使得k^n=p; #include #include #include using namespace std; int main() { int n; while(scanf("%d",&n)!=EOF) { ...

2011-12-01 22:13:29

阅读数:609

评论数:0

uva 10790 How Many Points of Intersection?

题意:有两个线,一在上,一在下,两线上各有n,m个点,使它们两两相连,使达到的交点最多(不包括线上的点),问你交点的数目。 把第一个坐标排序后,求第二个坐标的逆序对个数。 #include #include using namespace std; int main() { int...

2011-10-30 20:54:33

阅读数:640

评论数:0

uva 11044 Searching for Nessy

题意:给你一个n*m(6 #include #include using namespace std; int main() { int t; scanf("%d",&t); while(t--) { int n,m...

2011-10-30 20:51:50

阅读数:677

评论数:0

uva 10719 Quotient Polynomial

题意:f(x)=(x-k)p(x)+r,给你k,给你f(x)的各项系数,要你求出p(x)和r。 #include #include #include #include using namespace std; const int N=10005; int a[N],ans[N]; int...

2011-10-30 20:50:08

阅读数:794

评论数:1

uva 10014 Simple calculations

题意: 已知公式ai = (ai–1 + ai+1)/2 – ci ,给你a0,an+1,c1...cn,问a1, 如果我们知道a1,就可以把后面所以的am求出,也就是说,我们可以用a0,a1,去表示an。 #include #include using namespace std; in...

2011-10-30 20:48:22

阅读数:1231

评论数:0

uva 10970 Big Chocolate

题意:给你一块n*m的矩阵,要你求出要切多少刀才能把它们切成n*m个单位为1的小矩阵。当你把一个矩形切成两半之后,你要分别对两块进行切割,不能一刀切两个矩形。 先切n-1刀,把它切成n块,再对每块切m-1刀。 #include #include using namespace std;...

2011-10-30 20:29:40

阅读数:777

评论数:0

uva 10177 (2/3/4)-D Sqr/Rects/Cubes/Boxes?

题意:给你一个长度n,问n*n的矩形里有几个正方形s2,有几个长方形q2,n*n*n里有几个正方体s3,有几个长方体r3... 边长为1的正方形有n*n个,边长为2的正方形有(n-1)*(n-1)个。。。。 矩形,边长为1的边长有n个可能位置,边长为2的边长有n-1个可能位置,所以矩形所有可能...

2011-10-30 20:25:33

阅读数:724

评论数:0

uva 400 Unix ls

题意:给你一堆文件名,要你以列优先输出,每个文件名的长度是最大的那个文件名的长度(也就是是长度不够的,你要在它后面加些空格),且同一行的两个文件名之间还要有两个空格。 #include #include #include #include using namespace

2011-09-24 13:54:24

阅读数:1118

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭