社区讨论
-j T2 85 求调
灌水区参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @loh9rwcu
- 此快照首次捕获于
- 2023/11/02 22:16 2 年前
- 此快照最后确认于
- 2023/11/03 10:53 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
int n,d,now_r,now_p;
struct node{
int p,v,ans;
}a[100005];
int ceil(int a,int b){
if(a%b==0)
return a/b;
else return a/b+1;
}
int main(){
//freopen("road.in","r",stdin);
//freopen("road.out","w",stdout);
cin>>n>>d;
for(int i=1;i<n;i++)cin>>a[i].v;
for(int i=1;i<=n;i++)cin>>a[i].p;
for(int i=1;i<=n;i++){
if(a[i].ans!=-1){
for(int j=i+1;j<=n;j++){
if(a[i].p<a[j].p){
a[j].ans=-1;
a[i].ans+=a[j].v;
}
else break;
}
a[i].ans+=a[i].v;
}
}
for(int i=1;i<n;i++){
if(a[i].ans!=-1){
int shop=ceil((a[i].ans-now_r),d);
int price=shop*a[i].p;
now_p+=price;
now_r+=shop*d;
}
now_r-=a[i].v;
}
cout<<now_p;
return 0;
}
85
回复
共 3 条回复,欢迎继续交流。
正在加载回复...