uva 10570—— Meeting with Aliens

题意:n个外星人坐在一起,然后问通过交换多少次位置可以使正向或者反向是一个有序的序列。


思路:把n个外星人延长到2*n(因为有环),然后在1的位置上放1,2的位置放2,反向的话让序列倒过来重新操作一下即可。


code:

#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <sstream>
#include <string>
#include <vector>
#include <list>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <bitset>using namespace std;typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;const int INF=0x3fffffff;
const int inf=-INF;
const int N=1000000;
const int M=505;
const int mod=1000000007;
const double pi=acos(-1.0);#define cls(x,c) memset(x,c,sizeof(x))
#define cpy(x,a) memcpy(x,a,sizeof(a))
#define fr(i,s,n) for (int i=s;i<=n;i++)
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define lrt  rt<<1
#define rrt  rt<<1|1
#define middle int m=(r+l)>>1
#define lowbit(x) (x&-x)
#define pii pair<int,int>
#define mk make_pair
#define IN freopen("in.txt","r",stdin);
#define OUT freopen("out.txt","w",stdout);int n,vis[M],v[M*2];
int sol(int *p)
{cls(vis,0);int ct=0,k;fr (i,1,n){if (vis[i]) continue;ct++;k=i;while (!vis[k]) vis[k]=1,k=p[k];}return n-ct;
}
int  main()
{while (~scanf("%d",&n)&&n){fr (i,1,n) scanf("%d",&v[i]);int ans=INF;fr(i,1,2){fr (j,1,n) v[j+n]=v[j];fr(j,1,n) ans=min(ans,sol(v+j));reverse(v+1,v+1+n);}printf("%d\n",ans);}
}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381772.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于.net项目从vs2003升级到2005的若干问题

本人刚学习VS2.0&#xff0c;诸多问题&#xff0c;请勿见笑。 1&#xff0e;项目从2003转换成2005版本&#xff1a;用VS2005直接打开项目文件就会自动转换&#xff0c;注意保存备份&#xff0c;不然转换失败还可以恢复。2&#xff0e;似乎2005中.cs文件里控件的声明都取消了&am…

uva 10396——Vampire Numbers

题意&#xff1a;给定一个n位数&#xff08;<10&#xff09;&#xff0c;然后求这样的数两个n/2位的数相乘&#xff08;不能同时被10整除&#xff09;&#xff0c;得到这个n位数的重新组合&#xff0c;然后求这些数。 思路&#xff1a;暴力。直接枚举这样的数&#xff0c;当…

哈哈,这个小游戏很有意思!

小兔子游戏很游戏. 有空大家也来玩玩.http://www.ywlt.com/flash/0bells.swf转载于:https://www.cnblogs.com/kruny/archive/2007/02/07/643181.html

uva 11387——The 3-Regular Graph

题意&#xff1a;给定n个点&#xff0c;然后构造一个n个点的无向图&#xff0c;每个点的度数为3&#xff1b; 思路&#xff1a;由图论握手定理可知&#xff0c;每条边都会连接2个点&#xff0c;那么点数应为偶数个&#xff0c;奇数不可能&#xff0c;每个点为3度&#xff0c;那…

js技巧收集(200多个)

1.文本框焦点问题onBlur:当失去输入焦点后产生该事件onFocus:当输入获得焦点后&#xff0c;产生该文件Onchange:当文字值改变时&#xff0c;产生该事件Onselect:当文字加亮后&#xff0c;产生该文件 <input type"text" value"郭强" οnfοcus"if(v…

uva 11269——Setting Problems

题意&#xff1a;一共有n个问题&#xff0c;每个问题都有相应的s和g段&#xff0c;必须先解决s&#xff0c;然后才能解决g&#xff0c;两个人解决问题&#xff0c;问怎么解决使得总耗时最小。 思路&#xff1a;贪心。按照A.smax(A.g,B.s)B.g和B.smax(B.g,A.s)A.g;的ab先后顺序&…

只运行一个程序

重复运行程序会造成系统资源的浪费&#xff08;这句话真别扭&#xff09;&#xff0c;很多情况 下我们把程序最小化或者隐藏起来&#xff0c;想用这个程序的时候会习惯的doulbeclick程序的图标&#xff0c;wo~又一个程序运行了&#xff0c;我们本意是既然已经是打开的程序&…

uva 11012——Cosmic Cabbages

题意&#xff1a;给定n个点&#xff0c;然后求这n个点的两两间最大曼哈顿距离。 思路&#xff1a;暴力枚举。直接枚举肯定不行&#xff0c;d|x1-x2||y1-y2||z1-z2|&#xff0c;我们只要把绝对值拆开&#xff0c;变成d&#xff08;x1,y1,z1)(x2,y2,z2)逗号表示-号&#xff0c;然…

c#活动目录操作

添加引用 System.DirectoryServices导入命名空间 using System.DirectoryServices;srvip "192.168.1.1"; dn "DCl,DCcom";user "administrator"; pwd "123"; DirectoryEntry de;denewDirectoryEntry("LDAP://"srvip &quo…

CodeForces 572A,B,C

CodeForces 572A 题意&#xff1a;给定两个序列&#xff0c;问能否从第一个序列取出k个数&#xff0c;从第二个序列取出m个数&#xff0c;使得第一个序列取出来的所有数都小于第二个序列取出来的数。 思路&#xff1a;水。因为问的是存在&#xff0c;所以只要在第一个序列中取…

[导入]Ajax使用初步

文章来源:http://blog.csdn.net/21aspnet/archive/2007/03/19/1534299.aspx 转载于:https://www.cnblogs.com/zhaoxiaoyang2/archive/2007/03/20/816309.html

CodeForces 570B,C

CodeForces 570B 题意&#xff1a;给定n和m&#xff0c;然后再&#xff08;1-n&#xff09;中随机取出c&#xff0c;求一个m使得 的概率最大&#xff0c;概率一样时输出最小的m。 思路&#xff1a;只需要看1到m-1和m1和n的最大的那一边就可以了&#xff0c;坑是n1的情况和n为…

ASP.NET2.0学习8--WebPart部件

WebPart学习 内容&#xff1a; 功能简介 webpart的五个模式 自定义webpart部件 一、Webpart功能简介 1&#xff0e; 自定义页面内容 2&#xff0e; 自定义页面布局 3&#xff0e; 导入、导出webpart 4&#xff0e; 在不同部件间建立通信 5&#xff0e; 管理和个性化的设置 二、…

uva 10771——Barbarian tribes

题意&#xff1a;n个G族人和m个K族人做成一圈&#xff0c;编号1-n为G&#xff0c;编号n1-m为K组人&#xff0c;没走k步杀死一个人&#xff0c;当杀死两个人的时候判断杀的两人相同组则在第二个位置补K组人&#xff0c;否则G&#xff0c;问最后留下的是什么组的人。 思路&#x…

验证码(转)

把下面代码存为一个文件code.aspx。另一个文件里调用<img src"code.aspx">using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebCo…

uva 10716——Evil Straw Warts Live

题意&#xff1a;给定一个字符串&#xff0c;然后判断最小经过若干次交换然后使这个串变成一个回文串&#xff08;每次可以交换相邻两位&#xff09;。 思路&#xff1a;贪心。如果一个串的奇数字母的个数为奇数个&#xff0c;那么一定是不可能的。以开头和结尾作为两头不断枚举…

ASP.NET 2.0 中实现模板中的数据绑定系列(2)

双向数据绑定 FormView可以通过相关的数据源控件支持自动地更新、插入和删除操作&#xff08;与DetailsView类似&#xff09;。如果要定义编辑或插入的UI&#xff0c;那么除了定义数据项模板&#xff08;ItemTemplate&#xff09;之外&#xff0c;你还要定义EditItemTemplate或…

uva 10479——The Hendrie Sequence

题意&#xff1a;开始一个数0&#xff0c;然后0变成1&#xff0c;后边的变换规则是如果当前是k就在后边加上k-1个0&#xff0c;然后再加上k-1&#xff0c;该问题求该序列的第n个数是多少。 思路&#xff1a;规律的题目。将串分成1&#xff0c;1&#xff0c;2&#xff0c;4&…

如何实现Asp与Asp.Net共享Session

在.net中&#xff0c;Session的存储机制已经与Asp的存储机制不一样&#xff0c;虽然可以在同一个IIS下同时运行asp与aspx&#xff0c;但是它们之间不能传递Session。 之前大批系统应用到了asp&#xff0c;在升级过程中&#xff0c;如果完全抛弃asp来重写&#xff0c;一来工作量…

BestCoder Round #67 (div.2) 1001——N bulbs

题意&#xff1a;给定一个长度为n的灯泡的状态序列&#xff0c;经过每个灯泡时&#xff0c;都要开关一下&#xff08;开变关&#xff0c;关变开&#xff09;&#xff0c;问能否在回到终点的条件下关掉所有的灯。 思路&#xff1a;没出现一个为1的灯&#xff0c;都需要走奇数步来…