for(i=0;i<n*n;)
{
printf("%10.6lf ",gBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
printf("\n");
for(i=0;i<n*n;)
{
printf("%10.6lf ",bBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
printf("\n");
pd = new double[n*n];
for(i=0;i<n*n;)
{
printf("%10.6lf ",gBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
for(i=0,x=0;i<n;i++)
{
j=yingshe[i]*n;
for(k=0;k<n;k++) pd[j+k] = gBuf[x+k];
x+=n;
}
for(i=0,x=0;i<n;i++)
{
j=yingshe[i];
for(k=0;k<n;k++)
{
gBuf[x+j] = pd[x+i];
x+=n;
}
}
printf("\n");
for(i=0;i<n*n;)
{
printf("%10.6lf ",gBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
printf("\n");
for(i=0;i<n*n;)
{
printf("%10.6lf ",bBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
printf("\n");
for(i=0,x=0;i<n;i++)
{
j=yingshe[i]*n;
for(k=0;k<n;k++) pd[j+k] = bBuf[x+k];
x+=n;
}
for(i=0,x=0;i<n;i++)
{
j=yingshe[i];
for(k=0;k<n;k++)
{
bBuf[x+j] = pd[x+i];
x+=n;
}
}
for(i=0;i<n*n;)
{
printf("%10.6lf ",bBuf[i]);
i++;
if(!(i%n)) printf("\n");
}
printf("\n");
delete [] pd;