luogu4088 [USACO18FEB]Slingshot】的更多相关文章

link 这题在线得写树套树,所以我写的离线+树状数组 对于每个询问,Ans=\(\max_{j=1}^n{|a_j-x_i|+|b_j-y_i|+t_i}\) 拆成四种情况 \(x_i\le a_j,y_i\le b_j: a_j+b_j+t_i-x_i-y_i\) \(x_i\le a_j,y_i> b_j: a_j-b_j+t_i-x_i+y_i\) \(x_i> a_j,y_i\le b_j: -a_j+b_j+t_i+x_i-y_i\) \(x_i> a_j,y_i> b…
题面 大意:给出n个弹弓,可以用ti的时间把xi位置运到yi,在给出m组询问,求xj到yj最小时间. sol:首先如果不用弹弓,时间应为abs(xj-yj).否则时间就是abs(xi-xj)+abs(yi-yj)+ti.这就需要拆开绝对值用线段树来维护了.大力枚举四种情况,建四次线段树,就可以过了. #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> us…
题意可化为: 在二维平面中有n个点,坐标为\((x_i,y_i)\),点权为\(t_i\). 现有m个询问,每次给定点\((x,y)\),求\(\min\{|x-x_i|+|y-y_i|+t_i,|y-x|\}\) 排序离散化后扫描线+分类讨论即可 #include"cstdio" #include"cstring" #include"iostream" #include"algorithm" using namespace…
\(\color{#0066ff}{ 题目描述 }\) Farmer John最讨厌的农活是运输牛粪.为了精简这个过程,他产生了一个新奇的想法:与其使用拖拉机拖着装满牛粪的大车从一个地点到另一个地点,为什么不用一个巨大的便便弹弓把牛粪直接发射过去呢?(事实上,好像哪里不太对--) Farmer John的农场沿着一条长直道路而建,所以他农场上的每个地点都可以简单地用该地点在道路上的位置来表示(相当于数轴上的一个点).FJ建造了\(N\)个弹弓(\(1 \leq N \leq 10^5\)),其中…
传送门 解题思路 推了推式子发现是个二维数点,想了想似乎排序加线段树难写,就写了个树套树,结果写完看见空间才\(128M\)..各种奇技淫巧卡空间还是\(MLE\)到天上.后来只好乖乖的写排序+线段树.做法就是把式子写出来,然后把绝对值分类讨论成四种情况,发现这就是二维数点,然后讨论每种情况排序算最小值. 代码1(树套树 30pts) #include<iostream> #include<cstdio> #include<cstring> #include<cm…
题目链接 题意:有一个数轴,上面有 \(n\) 个传送门,使用第 \(i\) 个传送门,你可以从 \(x_i\) 走到 \(y_i\),花费的时间为 \(t_i\) 秒.你的速度为 \(1\) 格/秒,有 \(m\) 次询问,每次你要从 \(a_i\) 走到 \(b_i\),最多使用一次传送门,问最少需要多少秒. \(1 \leq n,m \leq 10^5\),\(0 \leq a_i,b_i \leq 10^9\) 我果然是要退役了,用未去重的数组离散化( 很显然对于第 \(j\) 个询问使…
C - 纪念SlingShot Description 已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给定的每个n,输出F(0)+ F(1)+ …… + F(n) mod 2009. Input 第一行是一整数m,代表总共有m个cases. Output 对于每个case,输出一行.格式见样例,冒号后有一个空格. Sample Input 2 3 6 Sample Output Case 1: 37…
题面:P4269 [USACO18FEB]Snow Boots G 题解: 把所有砖和靴子排序,然后依次处理每一双靴子,把深度小于等于它的砖块都扔线段树里,问题就转化成了求线段树已有的砖块中最大的砖块间距是否小于当前靴子间距. 代码: #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #define max(a,b) ((a)>(b)?(a):(b)) u…
纪念SlingShot [题目链接]纪念SlingShot [题目类型]矩阵水 &题解: 这代码调了十多分钟,结果是Mul没返回值,好zz啊. 令sum(n)=sum(n-1)+f(n) 那么sum(n)就是答案,可以得出矩阵: 转载自:http://blog.csdn.net/chenguolinblog/article/details/10309423 &代码: #include <cstdio> #include <bitset> #include <i…
Problem 1683 纪念SlingShot Accept: 361    Submit: 1287Time Limit: 1000 mSec    Memory Limit : 32768 KB Problem Description 已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给定的每个n,输出F(0)+ F(1)+ …… + F(n) mod 2009. Input 第一行是一整数m,代表…