#include <stdio.h>
#include <stdlib.h>
int N = 16;
int p[16];
int * SymmetricP(){
    int r,i,j;
    int a[N][2];
    srand(93467);
    for (i = 0; i < N; i++) {
        a[i][0] = i;a[i][1]=0;
    }
    for (i = 0; i < N; i++) {
        if (a[i][1]==0) {
            a[i][1]=1;
            while (1) {
                r =  (rand()%(N-1))+1 ;
                if (a[r][1]==0)break;
            }
            int swap = a[r][0];
            a[r][0] = a[i][0];
            a[r][1] =1;
            a[i][0] = swap;
        }
    }
    for (i=0;i<16;i++)p[i]=a[i][0];
    return p;
}

int main (int argc, char* argv[]){
    int i;
    SymmetricP();
    for (i=0;i<16;i++)
        printf("%i -> %i \n",i,p[i]);
}