社区讨论

思路是这么个思路,代码是这么个代码,错误是自己排查不出的

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 条回复,欢迎继续交流。

正在加载回复...