【CF1110E Magic Stones】题解

发布时间:2022-06-29 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了【CF1110E Magic Stones】题解脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

题目链接

我要是在noip前做这道题就好了。

这道题的本质就是noip2021方差中的一个性质,对于每个数进行修改,就是把它左右的差进行交换。

注意的是首项一定要一样。

Code

// Problem: CF1110E Magic Stones
// Contest: Luogu
// URL: https://www.luogu.com.cn/problem/CF1110E
// Memory Limit: 250 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;
#define int long long
inline int read(){int x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;
ch=getchar();}while(ch>='0'&&ch<='9'){x=(x<<1)+
(x<<3)+(ch^48);ch=getchar();}return x*f;}
//#define M
//#define mo
#define N 200010
int n, m, i, j, k; 
int a[N]; 
map<int, int>mp; 

signed main()
{
//	freopen("tiaoshi.in", "r", stdin); 
//	freopen("tiaoshi.out", "w", stdout); 
	n=read(); 
	for(i=1; i<=n; ++i) a[i]=read(); 
	k=a[1]; 
	for(i=1; i<=n; ++i) mp[a[i]-a[i-1]]++; 
	for(i=1; i<=n; ++i) a[i]=read(); 
	if(a[1]!=k) return printf("Non"), 0; 
	for(i=1; i<=n; ++i) 
		if(mp[a[i]-a[i-1]]==0) return printf("Non"), 0; 
		else mp[a[i]-a[i-1]]--; 
	printf("Yes"); 
	return 0; 
}

脚本宝典总结

以上是脚本宝典为你收集整理的【CF1110E Magic Stones】题解全部内容,希望文章能够帮你解决【CF1110E Magic Stones】题解所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: