CF1073C Vasya and Robot】的更多相关文章

CF题目难度普遍偏高啊-- 一个乱搞的做法.因为代价为最大下标减去最小的下标,那么可以看做一个区间的修改.我们枚举选取的区间的右端点,不难发现满足条件的左端点必然是不降的.那么用一个指针移一下就好了 注意特判无解和答案为\(0\)的情况,时间复杂度\(O(n)\)(然而因为人傻常数大所以还跑不过\(O(nlogn)\)的) //minamoto #include<bits/stdc++.h> #define rint register int #define GG return puts(&q…
C. Vasya and Robot time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vasya has got a robot which is situated on an infinite Cartesian plane, initially in the cell (0,0)(0,0). Robot can perfor…
任意门:http://codeforces.com/contest/1073/problem/C C. Vasya and Robot time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vasya has got a robot which is situated on an infinite Cartesian plane, i…
C. Vasya and Robot time limit per test: 1 secondmemory limit per test: 256 megabytesinput: standard inputoutput: standard output Vasya has got a robot which is situated on an infinite Cartesian plane, initially in the cell (0,0)(0,0)(0,0). Robot can…
题意:给定长为n的机器人行走路线,每个字符代表上下左右走,可以更改将一些字符改成另外三个字符,定义花费为更改的下标max-min+1, 问从(0,0)走到(X,Y)的最小花费,无解输出-1 n<=2e5,abs(X),abs(Y)<=1e9 思路:第一反应是二分,但其实并没有这个取到等号的严格的性质 不过因为内部可以调整,我们还是可以二分长度,然后看内部调整能不能构造出一组可行解 #include<cstdio> #include<cstring> #include&l…
1.题目描述 Vasya has got a robot which is situated on an infinite Cartesian plane, initially in the cell (0,0)(0,0). Robot can perform the following four kinds of operations: U — move from (x,y) to (x,y+1) D — move from (x,y)to (x,y−1) L — move from (x,y…
题目链接:http://codeforces.com/contest/355/problem/C 题意:1~n n个物品各重wi,现在有一个人可以从左边拿和从右边拿, 左边拿一个物品的花费是l*wi,从右边拿是r*wi.然后如果有一次从左边拿的上一次操作也是从左边拿的,就要额外花费ql,同理右边,问最小花费. 眼瞎胡乱跑了一发dp结果T了- 仔细观察就会发现,题意说的是-左手一定从最左边拿,右手一定从最右边拿-- 那么一定有一个点,这个点的左手边全是左手拿的,右手边都是右手拿的. 那么枚举这个点…
http://codeforces.com/contest/355/problem/C 枚举L和R相交的位置. #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const __int64 inf=1e19; int n,l,r,ql,qr; ]; ]; ]; __int64 min1(__int64 a,__int64 b) { if(a>b) retur…
http://codeforces.com/contest/1073/problem/C   题意:给你长度为n的字符串,每个字符为L, R, U, D.给你终点位置(x, y).你每次出发的起点为(0, 0).你可以改动每次的移动方向到达(x,y)点.求改动的MaxID-MinID+1是多少. 思路: 先分别求x轴,y轴上的前缀和,偏于之后判断区间是否满足条件.详细见代码. 固定左端点,二分枚举右端点.判断左右端点的区间是否能够达成目标(区间长度是否大于未完成量,奇偶性是否相同) 注意点: s…
题意:给出一段操作序列 和目的地 问修改(只可以更改 不可以删除或添加)该序列使得最后到达终点时  所进行的修改代价最小是多少 其中代价的定义是  终点序号-起点序号-1 思路:因为代价是终点序号减去起点序号 所以  在终点和起点之前 可以任意变换  则如果  x+y 和序列长度n的奇偶性相同 就一定可以到达 可以使用二分(二分好容易写炸啊!)  把(以1为起点) [1,i]U[[i+len,n]最后到达的点记为x0,y0  而中间缺的就是可以修改的区间 这里不必要判断奇偶性  因为如果x0,y…