/*
Ci'=Ci+1 + Ci-1 -Ci
Ci+1 - Ci' = Ci - Ci-1
Ci' - Ci-1 = Ci+1 - Ci;
即求一次Ci’等价于交换Ci和Ci-1 与 Ci+1和Ci的差值
那么只要差值排序后的数组是相同的即可
*/
#include<bits/stdc++.h>
using namespace std;
#define maxn 100005
vector<
int>
v1,v2;
int a[maxn],b[maxn],n;
int main(){
cin>>
n;
for(
int i=
1;i<=n;i++)cin>>
a[i];
for(
int i=
1;i<=n;i++)cin>>
b[i];
for(
int i=
1;i<n;i++
)
v1.push_back(a[i+
1]-a[i]),v2.push_back(b[i+
1]-
b[i]);
sort(v1.begin(),v1.end());
sort(v2.begin(),v2.end());
if(a[
0]==b[
0] && a[n]==b[n] && v1==v2)puts(
"Yes");
else printf(
"No");
}
转载于:https://www.cnblogs.com/zsben991126/p/10356131.html