Codeforces Round #144 (Div. 2)-A. Perfect Permutation_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:55:04
Original
1130 Leute haben es durchsucht

Perfect Permutation

time limit per test

2 seconds

memory limit per test

256 megabytes

input

standard input

output

standard output

A permutation is a sequence of integers p1,?p2,?...,?pn, consisting of n distinct positive integers, each of them doesn't exceed n. Let's denote the i-th element of permutation p as pi. We'll call number n the size of permutation p1,?p2,?...,?pn.

Nickolas adores permutations. He likes some permutations more than the others. He calls such permutations perfect. A perfectpermutation is such permutation p that for any i (1?≤?i?≤?n) (n is the permutation size) the following equations hold ppi?=?i and pi?≠?i. Nickolas asks you to print any perfect permutation of size n for the given n.

Input

A single line contains a single integer n (1?≤?n?≤?100) ? the permutation size.

Output

If a perfect permutation of size n doesn't exist, print a single integer -1. Otherwise print n distinct integers from 1 to n, p1,?p2,?...,?pn ? permutation p, that is perfect. Separate printed numbers by whitespaces.

Sample test(s)

input

output

-1
Nach dem Login kopieren

input

output

2 1 
Nach dem Login kopieren

input

output

2 1 4 3 
Nach dem Login kopieren




解题思路:贪心。直接构造。如果n为奇数,则不能构成满足要求的排列;否则,两个两个的构造,如2,1;4,3。。。以此类推即可。







AC代码:

#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>using namespace std;#define INF 0x7fffffffint main(){    #ifdef sxk        freopen("in.txt","r",stdin);    #endif    int n;    while(scanf("%d",&n)!=EOF)    {        if(n&1){            printf("-1\n");            continue;        }        else{            for(int i=1; i<n i printf n n-1 return>  <br>  <br>  <p></p> </n></time.h></stdlib.h></math.h></string></map></set></queue></vector></algorithm></iostream></string.h></stdio.h>
Nach dem Login kopieren
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage