📄 array.cpp
字号:
#include <iostream.h>
int ColToRow(int k,int n)
{
int i=k,j=0;
while (i>j)
i-=++j;
return i*n+j-i*(i+1)/2;
}
void trans(int b[],int n)
{
int m,k,r,c,w;
m=(n+1)*n/2-4;
k=2;
while (m>0)
{
r=ColToRow(k,n);
if (r==k)
m--;
else
{
c=k;w=r;
while (r>k)
{
c=r;
r=ColToRow(c,n);
}
if (r==k)
{
c=k;r=w;w=b[k];
while (r!=k)
{
b[c]=b[r];
m--;
c=r;
r=ColToRow(c,n);
}
b[c]=w;
m--;
}
}
k++;
}
}
void main()
{
int b[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
int i;
for (i=0;i<15;i++)
cout<<b[i]<<" ";
cout<<endl;
trans(b,5);
for (i=0;i<15;i++)
cout<<b[i]<<" ";
cout<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -