problem

solution

codes

//1,2:各在左右:把所有物品从区间移到最左边的花费减去把所有物品从目标位置移到最左边的花费就是把所有物品从区间移到目标位置的花费,右边同理。
//3:若目标仓库在区间内部,将区间拆为两部分分别算。
//ans:所以只需要维护bi*xi和bi即可,用前缀和,复杂度线性
#include<iostream>
using namespace std;
typedef long long LL;
const int maxn = (int)3e7+10;
const int mod = 19260817;
LL x[maxn], b[maxn];
LL xx[maxn], bb[maxn];//前缀和
int main(){LL n, m;cin>>n>>m;for(int i = 2; i <= n; i++){cin>>x[i];  x[i] += x[i-1]; x[i]%=mod;}for(int i = 1; i <= n; i++){cin>>b[i];  bb[i]=b[i]+bb[i-1]; bb[i]%=mod;xx[i] = x[i]*b[i]+xx[i-1];  xx[i]%=mod;}for(int i = 1; i <= m; i++){LL g, l, r, t;  cin>>g>>l>>r;if(g <= l)t = (xx[r]-xx[l-1])-x[g]*(bb[r]-bb[l-1]);else if(g >= r)t = x[g]*(bb[r]-bb[l-1])-(xx[r]-xx[l-1]);else t = (xx[r]-xx[g])-x[g]*(bb[r]-bb[g])+x[g]*(bb[g-1]-bb[l-1])-(xx[g-1]-xx[l-1]);//左边加右边即可,自己到自己为0t %= mod;if(t < 0)t += mod;cout<<t<<"\n";}return 0;
}

转载于:https://www.cnblogs.com/gwj1314/p/9444715.html

【Luogu3932】浮游大陆的68号岛相关推荐

  1. 【Luogu3932】浮游大陆的68号岛(前缀和)

    problem solution codes //1,2:各在左右:把所有物品从区间移到最左边的花费减去把所有物品从目标位置移到最左边的花费就是把所有物品从区间移到目标位置的花费,右边同理. //3: ...

  2. 【洛谷P3932】浮游大陆的68号岛【前缀和】

    linklinklink 分析: 前缀和 sumisum_isumi​表示 将仓库1−i1-i1−i所有物品转移到111号仓库花费 sum2isum2_isum2i​表示 将仓库1−i1-i1−i所有 ...

  3. P3932 浮游大陆的68号岛

    题面:https://www.luogu.org/problem/P3932 本题中在设在x左边的区间为[l1,r1],在x右边的区间为[l2,r2] 则ansl=∑(d(x)-d(i))*a(i), ...

  4. C# 中国大陆二代身份证号生成及格式验证

    中国大陆二代身份证18位身份证规则计算图: private void Form1_Load(object sender, EventArgs e){string[] v = QueryIDCard(& ...

  5. noip2017考前整理(未完)

    快考试了,把我以前写过的题回顾一下. Noip2007 树网的核:floyd,推出性质,暴力. Noip2008 笨小猴:模拟 Noip2008 火柴棒等式:枚举 Noip2008 传纸条:棋盘dp ...

  6. 致——世界上最幸福的女孩——Chtholly

    Chtholly がんばれ 珂朵莉くとり,がんばれ Are you going to Scarborough Fair? Parsley, sage, rosemary, and thyme. Rem ...

  7. nzhtl1477-ただいま帰りました ( bfs )

    nzhtl1477-ただいま帰りました 题目描述 珂学题意: 你是威廉!你要做黄油蛋糕给珂朵莉吃~! 68号岛有n个商店,有的商店直接有小路连接,小路的长度都为1 格里克告诉了你哪些地方可能有做黄油蛋 ...

  8. 【洛谷八连测R2】fateice-or

    题目背景 题目描述 悬浮大陆群边境地带 68号岛,妖精仓库. 在威廉的面前有着数不清的护符,这些护符的功能值从00到2^{30}-1230−1,且每种功能值的护符都可以多次使用.为了调整圣剑,迎战接下 ...

  9. [HNOI2009]无归岛

    Description Neverland是个神奇的地方,它由一些岛屿环形排列组成,每个岛上都生活着之中与众不同的物种.但是这些物种都有一个共同的生活习性:对于同一个岛上的任意两个生物,他们有且仅有一 ...

最新文章

  1. python turtle画画 30排以内_Python竟能画这么漂亮的花,帅呆了(代码分享)
  2. java培训:Java的十大算法
  3. SpringBoot 定时任务动态管理通用解决方案
  4. onMeasure模式
  5. 机器学习知识点(一)文本字符信息熵Java实现
  6. 【TensorFlow2.0】数据读取与使用方式
  7. 【算法设计与数据结构】为何程序员喜欢将INF设置为0x3f3f3f3f?(转)
  8. 前端学习(3120):react-hello-react的setstate的一个说明
  9. beforeRouteEnter,beforeRouteLeave函数
  10. Jstorm+Spring+mybatis整合
  11. 深入理解计算机系统 第十二章 并发编程
  12. python进制转换大全
  13. 活动目录集成区域DNS服务
  14. 条款2. 最好使用C++转型操作符
  15. Spring设计模式之装饰器模式
  16. WEBMAX功能简述
  17. 在精不在多,3 分钟看 3 个 JS 小把戏
  18. 夺命雷公狗ThinkPHP项目之----企业网站25之网站前台面包屑导航URL的完善
  19. 软件实施:别把我想简单了
  20. dht11 python mysql,通过python脚本将arduino传感器数据发送到mysql数据库时出现问题

热门文章

  1. 1336:【例3-1】找树根和孩子
  2. Vue.js的基本使用 学习笔记
  3. 【Tools】Windows安装CMake工具
  4. html多选框 jquery,jQuery Select多选
  5. vue 版本发布 在线跟新用户操作解决方案_Vue3.0正式发布,本次发布所有总结,一起看看!【附在线视频】...
  6. java 过滤文件名_Java FileNameFilter过滤文件名
  7. 二叉树的链式结构的非递归遍历
  8. 每天一道LeetCode-----计算二叉树所有根节点到叶子节点的和
  9. Rust中对某个结构体实现方法于rust中的关联函数
  10. 如何修改vs2008代码字体