红题 AC 了,但疑惑,求解
查看原帖
红题 AC 了,但疑惑,求解
1079073
Hatsunatsu楼主2023/12/13 17:27

rt,蒟蒻前几天交了一份代码,用一遍循环搞定的,样例也全过了,不过 WA 在测试点 #16 了。

Record.

Code:

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>

typedef long long ll;

const int MAXN=1e6+10;
const int MOD=1e9+7;

using namespace std;

ll a[MAXN]; 

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	ll n;
	cin>>n;
	ll x;
	bool res=0;
	for(ll i=1;i<=n;i++){
		cin>>a[i];
		if(i==2){
			x=a[2]-a[1];
			if(n==2){
				cout<<a[2]+a[2]-a[1]<<"\n";
				return 0;
			}
		}
		if(i>=2&&i<=n&&a[i]-a[i-1]!=x){
			res=1;
			break;
		}
	}
	if(res==0){
		cout<<a[n]+x<<"\n";
	}
	else{
		cout<<a[n]<<"\n";
	}
	return 0;
}

而这样的代码就能 AC 了。

很好奇为什么第一版代码会错,或者有没有神犇能提供一组 hack 数据?感谢。

2023/12/13 17:27
加载中...