cf1110E 思维
/* 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"); }