http://codevs.cn/problem/1106/ (题目链接)

题意

  将1~n顺序排列的环改成另一个环,问n-不动点数。

Solution

  啊智障啦,不会做×_×

  左转hzwer

代码

// codevs1106
#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<cmath>
#define LL long long
#define inf 1<<30
#define Pi acos(-1.0)
#define free(a) freopen(a".in","r",stdin),freopen(a".out","w",stdout);
using namespace std; const int maxn=50010;
int vis[maxn],t1[maxn],t2[maxn],a[maxn],b[maxn],c[maxn],n; int main() {
scanf("%d",&n);
for (int i=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]);
c[1]=1;c[2]=a[1];
vis[c[1]]=vis[c[2]]=1;
for (int i=2;i<n;i++) {
if (c[i-1]==a[c[i]]) c[i+1]=b[c[i]];
else if (c[i-1]==b[c[i]]) c[i+1]=a[c[i]];
else {puts("-1");return 0;}
vis[c[i+1]]=1;
}
for (int i=1;i<=n;i++) if (!vis[i]) {puts("-1");return 0;}
int ans=1;
for (int i=1;i<=n;i++) {
int t=(c[i]-i+n)%n;
t1[t]++;
ans=max(ans,t1[t]);
t=(c[n-i+1]-i+n)%n;
t2[t]++;
ans=max(ans,t2[t]);
}
printf("%d",n-ans);
return 0;
}

最新文章

  1. 创建虚拟目录失败,必须为服务器名称指定“localhost”?看进来!!
  2. LogConfigruration
  3. Storm系列(一):搭建dotNet开发Storm拓扑的环境
  4. innobackupex的安装
  5. Codeforces Beta Round #6 (Div. 2 Only) D. Lizards and Basements 2 dp
  6. linux中配置桥接网络,让虚拟机能够上网
  7. android中使用intent来实现Activity带数据跳转
  8. Oracle 序列的应用
  9. ASP.NET(支持 ASP.NET MVC)性能优化包 - combres 介绍
  10. 201521123003《Java程序设计》第11周学习总结
  11. element-tree-grid(表格树)的使用
  12. git push 时提示用户名或密码相关错误信息
  13. post请求中body数据类型
  14. Scrapy基础(五) ------css选择器基础
  15. Gitlab CR
  16. Sublime Text的使用
  17. bzoj1007/luogu3194 水平可见直线 (单调栈)
  18. 数学 它的内容,方法和意义 第二卷 (A. D. 亚历山大洛夫 著)
  19. 使用uni-app开发微信小程序之登录模块
  20. redis学习-事务命令

热门文章

  1. wordpress插件bug排查后记(记一次由于开启memecached引起的插件bug)
  2. ldap部署相关,ldap双机\LAM配置管理\ldap备份还原
  3. scikit-learn一般实例之四:使用管道和GridSearchCV选择降维
  4. Redis简单案例(三) 连续登陆活动的简单实现
  5. C# Linq排序
  6. [C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)
  7. vcredist_x64.exe vcredist_x86.exe 静默安装方法收集
  8. HashMap 源码解析
  9. python 学习笔记 -logging模块(日志)
  10. react动画难写?试试react版transformjs