首先发现 首尾不能变,上述式表明,相邻的差 可以交换,那么只需sort一下
数学敏感规律题。。
#include<bits/stdc++.h>
using namespace std;
#define FSC(i,l,r,a) for(int i=l;i<=r;i++) scanf("%d",&a[i])
#define SC(a) scanf("%d",&a)
#define LL long long
#define mod 1000000007
#define N 100005
/***************************************************************************************************************************************************/
int main(){
int n;cin>>n;
int c[N],t[N];
FSC(i,1,n,c);
FSC(i,1,n,t);
int dc[N],dt[N];
for(int i=2;i<=n;i++){
dc[i]=c[i]-c[i-1];
dt[i]=t[i]-t[i-1];
}
sort(dc+1+1,dc+1+n);
sort(dt+1+1,dt+1+n);
if(c[1]!=t[1]||c[n]!=t[n]) {
cout<<"No";
return 0;
}
for(int i=2;i<=n;i++){
if(dc[i]!=dt[i]) {
cout<<"No";
return 0;
}
}
cout<< "Yes";
return 0;
}