Educational Codeforces Round 63 (Rated for Div. 2)

A

# include <bits/stdc++.h>
using namespace std;

int main()
{
	int n;
	int flag=1;
	
	string a;
	
	scanf("%d",&n);
	cin>>a;
	
	for(int i=1;i<n;i++){
		if(a[i]<a[i-1]){
			flag=0;
			printf("YES\n");
			printf("%d %d",i,i+1);
			break;
		}
	}
	if(flag) printf("NO");
	 
	return 0;
 } 

B

# include <bits/stdc++.h>
using namespace std;

int main()
{
	int n;
	string s;
	int a=0;
	int b=0;
	int flag=0;
	
	scanf("%d",&n);
	cin>>s;
	
	a=(n-11)/2;
	for(int i=n-1-10;i>=0;i--){
		if(s[i]=='8'){
			b++;
		}
	}
	
	if(b>a){
		printf("YES"); 
	}else{
		printf("NO");
	}
	
	return 0;
}

C

# include <bits/stdc++.h>
using namespace std;

typedef long long LL;
const int MAXN=3e5+10;
//LL gcd(LL a,LL b) {return b?gcd(b,a%b):a;}
LL x[MAXN];
LL p[MAXN];
LL c[MAXN];
LL ys=0;
int main()
{
	LL n,m;
	LL d=0;
	int flag=0;

	scanf("%lld %lld",&n,&m);
	for(LL i=0;i<n;i++){
		scanf("%lld",&x[i]);
		if(i){
			c[i]=x[i]-x[i-1];
		}
	}
	ys=c[1];
	for(LL i=2;i<n;i++){
		ys=__gcd(ys,c[i]);
	}
	for(LL i=1;i<=m;i++){
		scanf("%lld",&p[i]);
		if(ys%p[i]==0){
			flag=1;
			d=i;
			break;
		}
	}
	if(n<2||m<1) flag=0;
	if(flag){
		printf("YES\n");
		printf("%lld %lld",x[0],d);
	}else{
		printf("NO");
	}
	return 0;
}

D

# include <bits/stdc++.h>
using namespace std;

typedef long long LL;
const int MAXN=3e5+10;
int a[MAXN];
void Findsumk(int *a,int n,unsigned int m)
{
	int i,j;
	i=j=0;
	int sum=a[0];
	while(i<=j&&j<n)
	{
		if(sum>=m){
			if(sum==m) printf("%d-%d\n",i+1,j+1);
			sum-=a[i];
			++i;
		}else{
			++j;
			sum+=a[j];
		}
	}
	
	return ;
}
int main()
{
	int n,x;
	
	scanf("%d %d",&n,&x); 
	for(int i=0;i<n;i++){
		scanf("%d",&a[i]);
	}
	Findsumk(a,n,n);
	return 0;
 } 

posted @ 2022-02-27 00:17  fengzlj  阅读(22)  评论(0)    收藏  举报