社区讨论
WA蒟蒻求助,急!!!
P5016[NOIP 2018 普及组] 龙虎斗参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @lo837an2
- 此快照首次捕获于
- 2023/10/27 12:02 2 年前
- 此快照最后确认于
- 2023/10/27 12:02 2 年前
代码如下:
CPP#include<iostream>
#include<cmath>
using namespace std;
long long tiger=0,dragon=0,s1,s2,p1,p2,m,n,b[101],min_num=9223372036854775807;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>b[i];
}
cin>>m>>p1>>s1>>s2;
for(int i=1;i<m;i++){
dragon+=i*b[i];
}
for(int i=m+1;i<=n;i++){
tiger+=(i-m)*b[i];
}
if(p1<m) dragon+=p1*s1;
if(p1>m) tiger+=(p1-m)*s1;
for(int i=1;i<=n;i++){
if(i<m){
dragon+=i*s2;
if(abs(dragon-tiger)<min_num){
min_num=abs(dragon-tiger);
p2=i;
}
dragon-=i*s2;
}
if(i==m){
if(abs(dragon-tiger)<min_num){
min_num=abs(dragon-tiger);
p2=i;
}
}
if(i>m){
tiger+=(i-m)*s2;
if(abs(dragon-tiger)<min_num){
min_num=abs(dragon-tiger);
p2=i;
}
tiger-=(i-m)*s2;
}
}
cout<<p2;
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...