T554496
  • 板块题目总版
  • 楼主liuboling
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/12/27 19:55
  • 上次更新2024/12/27 19:58:02
查看原帖
T554496
1479764
liuboling楼主2024/12/27 19:55
#include<bits/stdc++.h>
using namespace std;
#define N 1000000
bool a[N]={true};
int n,m,x,bbb=1;
int main(){
	cin>>n>>m>>x;
	a[m]=false;
	for(int i=1;i<=x;i++){
		if(m-i>0&&m+x<=n){
			//a[m-i]=a[m+i]=false;
			//bbb+=2;
			if(a[m-i]!=false){
				a[m-i]=false;
				bbb++;
			}
			if(a[m+i]!=false){
				a[m+i]=false;
				bbb++;
			}
		}
		if(m-i<1){
//			a[m+i]=a[(n+1)-(1-(m-i))]=false;
//			bbb
			if(a[m+i]!=false){
				a[m+i]=false;
				bbb++;
			}
			if(a[(n+1)-(1-(m-i))]!=false){
				a[(n+1)-(1-(m-i))]=false;
				bbb++;
			}
		}
		if(m+i>n){
			if(a[(m+i)%n]!=false){
				a[(m+i)%n]=false;
				bbb++;
			}
			if(a[m-i]!=false){
				a[m-i]=false;
				bbb++;
			}
		}
	}
	if(bbb=n){
		cout<<"GG";
	}
	else if(bbb<n){
		for(int i=1;i<=n;i++){
			if(a[i]!=false){
				cout<<i<<' ';
			}
		}
	}
	return 0;
}/* 1. 2 3 4 5
	     m i=3 n=5
	  */

why;

2024/12/27 19:55
加载中...