社区讨论

暴力TLE后三,大佬求助

P5682[CSP-J 2019 江西] 次大值参与者 3已保存回复 3

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@m0hqew6j
此快照首次捕获于
2024/08/31 13:58
2 年前
此快照最后确认于
2025/11/04 21:57
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
long long n;
long long a[200005];
long long s[200005],vis[200005],k=0;
int main(){
	cin >> n;
	memset(vis,0,sizeof(vis));
	for(long long i=1;i<=n;i++){
		cin >> a[i];
		for(long long j=1;j<i;j++){
			long long c=a[j]%a[i];
			long long d=a[i]%a[j];
			if(!vis[c]){
				vis[c]=1;
				s[k++]=c;
			}
			if(!vis[d]){
				vis[d]=1;
				s[k++]=d;
			}
		}
	}
	if(k==1 || k==0){
		cout << "-1";
		return 0;
	}
	sort(s,s+k);
	cout << s[k-2];
	return 0;
}

回复

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

正在加载回复...