社区讨论
思路是这么个思路,代码是这么个代码,错误是自己排查不出的
AT_abc347_c [ABC347C] Ideal Holidays参与者 4已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @lyy607uu
- 此快照首次捕获于
- 2024/07/23 16:39 2 年前
- 此快照最后确认于
- 2024/07/23 18:10 2 年前
求调悬棺(●'◡'●)
CPP#include<bits/stdc++.h>
using namespace std;
int s[200005];
int main(){
freopen("b12.in","r",stdin);
int n,b,a,l=INT_MIN,r=INT_MAX;
scanf("%d%d%d",&n,&a,&b);
long long d=a+b;
for(int i=1;i<=n;i++){
scanf("%d",&s[i]);
s[i]=s[i]%d;//预处理s[i]
}
//有左右两个端点,(端点为实心点,可取)
for(int i=1;i<=n;i++){
if(s[i]<d&&s[i]>a){
l=max(l,a+b+1);
r=min(r,a+a+b);
}
else if(s[i]<d&&s[i]<=a){
l=max(0,l);
r=min(a-s[i],r);
}
if(s[i]==0){
l=max(l,1);
r=min(r,a);
}
}
//如果左端点大于右端点,就没有可取值了,输出No
if(l>r) cout<<"No";
else cout<<"Yes";
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...