社区讨论

考场上脑子进水了写了这么个垃圾代码,求大佬帮忙调一下

灌水区参与者 6已保存回复 15

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
15 条
当前快照
1 份
快照标识符
@lnzzn2lr
此快照首次捕获于
2023/10/21 20:00
2 年前
此快照最后确认于
2023/11/02 12:10
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int cmp(int x,int y){
	if(x>y&&x!=0&&y!=0) return y>x;
	if(x<y&&x!=0&&y!=0) return y<x;
}
int a[10000000]={};
int main(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		a[i]=i;
	}
	int j=1,sum=0,s=1;
	while(1){
		s++;
		sum=0;
		for(int i=1;i<=n;i++){
			if(j==i){
				a[i]=0;
				j+=3;
			}
			if(j>n){
				sort(a+1,a+1+n,cmp);
				j=1;
			}
			//cout<<a[i]<<" ";
			sum+=a[i];
		}
		if(sum==0) {
			cout<<s-1<<" ";
			if(n%3==1) cout<<1;
			if(n%3==0) cout<<n/3;
			if(n%3==2) cout<<s-1;
			return 0;
	    }
	}
}

回复

15 条回复,欢迎继续交流。

正在加载回复...