Thứ Sáu, 12 tháng 10, 2012

Problem Perfect Permutation

Link: http://codeforces.com/problemset/problem/233/A

A. Perfect Permutation
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output
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 perfect permutation 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 np1, p2, ..., pn — permutation p, that is perfect. Separate printed numbers by whitespaces.
Sample test(s)
input
1
output
-1
input
2
output
2 1 
input
4
output
2 1 4 3 


Bài toán rất đơn giản:
code here: đã AC:

#include<iostream>
using namespace std;

int main()
{
int N;
cin >> N;
if(N==1||(N%2)==1)
{
cout << -1 << endl;
// system("pause");
return 0;
}

for(int j = 1; j <= N;j+=2)
cout << j+1 << " " << j << " ";
cout << endl;
//system("pause");
return 0;

}



Không có nhận xét nào:

Đăng nhận xét