Untitled
unknown
plain_text
4 years ago
1.1 kB
64
Indexable
#include<stdio.h> void swap(int *a, int *b) { int tmp = *a; *a = *b; *b = tmp; } void xuli(int *a, int n, int k) { if(n%2 == 1 && k != 0) { printf("-1"); } else if(k == 0) { int i; for(i = 1;i<=n;i++) { printf("%d ", a[i]); } } else { int i; if(k > n/2) { printf("-1"); } else { int b[1000111] = {0}; for(i = 1;i<=n;i++) { if(b[i] == 0) { swap(&a[i], &a[i+k]); b[i] = 1; b[i+k] = 1; } } for(i = 1;i<=n;i++) { printf("%d ", a[i]); } } } } int main() { int n; scanf("%d", &n); int a[1000111]; int i; a[0] = 0; for(i = 1;i<=n;i++) { a[i] = i; } int k; scanf("%d", &k); xuli(a,n,k); return 0; }
Editor is loading...