UVA 11925(p254)----Generating Permutations

来源:互联网 发布:godaddy购买域名教程 编辑:程序博客网 时间:2024/05/18 11:45
#include<cstdio>#include<queue>#include<vector>#include<cstring>#include<iostream>#include<algorithm>using namespace std;vector<int> ans;deque<int> q;int n;int check(){    for(int i=1;i<q.size();i++)        if(q[i]<q[i-1]) return 0;    return 1;}int main(){    while(scanf("%d",&n)==1&&n)    {        q.clear();        ans.clear();        for(int i=0;i<n;i++)        {            int x;            scanf("%d",&x);            q.push_back(x);        }        while(!check())        {            if(q[0]>q[1]&&q[0]!=n)            {                swap(q[0],q[1]);                ans.push_back(1);            }            int tmp=q.back();            q.pop_back();            q.push_front(tmp);            ans.push_back(2);        }      for(int i=ans.size()-1;i>=0;i--)        printf("%d",ans[i]);      printf("\n");    }    return 0;}

0 0
原创粉丝点击