牛客储物点的距离

news/2024/10/18 2:28:08/

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

题目描述

 一个数轴,每一个储物点会有一些东西,同时它们之间存在距离。
每次给个区间[l,r],查询把这个区间内所有储物点的东西运到另外一个储物点的代价是多少?
比如储物点i有x个东西,要运到储物点j,代价为x * dist( i , j )
dist就是储物点间的距离。 

输入描述:

第一行两个数表示n,m

第二行n-1个数,第i个数表示第i个储物点与第i+1个储物点的距离ai

第三行n个数,表示每个储物点的东西个数bi

之后m行每行三个数x l r

表示查询要把区间[l,r]储物点的物品全部运到储物点x的花费

每次查询独立

输出描述:

对于每个询问输出一个数表示答案
答案对1000000007取模

示例1

输入

5 5
2 3 4 5
1 2 3 4 5
1 1 5
3 1 5
2 3 3
3 3 3
1 5 5

输出

复制125 72 9 0 7125 72 9 0 70

备注:

对于100%的数据n,m <= 200000 , 0 <= ai,bi <= 2000000000

还有减号取模为(a-b+mod)%mod,因为减可能为负数

#include<bits/stdc++.h>
using namespace std;
using ll=long long;
const ll mod=1000000007;//qu
ll a[200005],b[200005],s[200005];
ll right(int l,int r,int x){//在左边return ((s[r]-s[l-1])-a[x]*(b[r]-b[l-1]))%mod;//把区间到1点的前缀和算出来,然后减去1到x的多余前缀和
}
ll left(int l,int r,int x){//在右边return (a[x]*(b[r]-b[l-1])-(s[r]-s[l-1]))%mod;//与上面相反
}
int main(){int n,m;cin>>n>>m;for(int i=2;i<=n;i++){//各点到1点的距离ll num;cin>>num;a[i]=(a[i-1]+num)%mod;}for(int i=1;i<=n;i++){cin>>b[i];s[i]=(s[i-1]+b[i]*a[i])%mod;//各点转移到1点的代价b[i]=(b[i-1]+b[i])%mod;//区间物品数量}for(int i=1;i<=m;++i){ int x,l,r;cin>>x>>l>>r;ll ans=0;if(x<=l)ans=right(l,r,x);else if(x>=r)ans=left(l,r,x);else ans=left(l,x,x)+right(x,r,x);cout<<(ans%mod+mod)%mod<<endl;}
}


http://www.ppmy.cn/news/1454995.html

相关文章

ES dsl查询filter(或must)和should并用时should子句不生效

记录下今天编码时遇到的问题&#xff0c;在filter和should同级并用的查询下&#xff0c;should子句并没有生效&#xff0c;只有filter子句生效。 例如以下dsl {"query": {"bool": {"filter": [{"term": {"status": 3}}],&…

区块链 | NFT 相关论文:Preventing Content Cloning in NFT Collections(一)

&#x1f436;原文&#xff1a; Preventing Content Cloning in NFT Collections &#x1f436;写在前面&#xff1a; 这是一篇 2023 年的 CCF-C 类&#xff0c;本博客只记录其中提出的方法。 A Robust NFT Collection Functionality 我们将在本节中提出一个定义。在假设有恶…

期权如何开户的流程是什么样的?

今天期权懂带你了解期权如何开户的流程是什么样的&#xff1f;期权账户开户是指投资者向期权经纪商或金融机构提交申请&#xff0c;以便可以在期权市场上进行交易并持有期权合约的账户开设过程。 期权如何开户的流程是什么样的&#xff1f; 1. 投资者参与营业部提供的股票期权…

百川2模型解读

简介 Baichuan 2是多语言大模型&#xff0c;目前开源了70亿和130亿参数规模的模型。在公开基准如MMLU、CMMLU、GSM8K和HumanEval上的评测&#xff0c;Baichuan 2达到或超过了其他同类开源模型&#xff0c;并在医学和法律等垂直领域表现优异。此外&#xff0c;官方还发布所有预…

富格林:了解黑幕套路正规方法预防

富格林悉知&#xff0c;存于市场中的黑幕亏损&#xff0c;不仅扰乱市场秩序&#xff0c;还使得不少的投资者受害亏损&#xff0c;面对诱导黑幕陷阱&#xff0c;一定要注意采取正规的方法防范避免受害亏损。投资者在进入市场之前&#xff0c;可从黑幕案件中了解黑幕亏损原因&…

pcb沉金工艺有什么作用:为何它成为电子制造的必备工艺?

在电子制造业中&#xff0c;PCB&#xff08;印刷电路板&#xff09;的质量和性能对于产品的整体表现至关重要。沉金工艺因其能够显著提升pcb的焊接性能、耐腐蚀性和导电性能&#xff0c;已成为电子制造不可或缺的一部分。 一、沉金工艺的作用 1.焊接性能的提升&#xff1a;工…

从VPS切换到云服务器的几大理由

有很多文章比较VPS和云服务器&#xff0c;选择哪种解决方案来提供最佳效率。尽管很多人仍在使用VPS&#xff0c;但其中许多人已对云服务器拥有简单的认知&#xff0c;且已有意图从VPS迁移到云服务器。然而在这样做之前&#xff0c;您需要更加深入了解云服务器&#xff0c;它的优…

[开发|鸿蒙] 鸿蒙OS开发环境搭建(笔记,持续更新)

搭建开发环境流程&#xff1a; https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/installation_process-0000001071425528-V2 鸿蒙DevEco Studio 3.1.1 Release仅支持windows和mac系统 运行环境要求 为保证DevEco Studio正常运行&#xff0c;建议电脑配置…