📄 3106.cpp
字号:
#include <iostream.h>
char a[305][305],b[305][305],comm,tt;
int n,m,i,j,h,v,r,t;
int main()
{
cin>>n>>m;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
cin>>a[i][j];
h=0;v=0;r=0;
while (cin>>comm)
{
if (comm=='1')
{
if (r%2==0)
h=(h+1)%2;
else
v=(v+1)%2;
r=(r+1)%4;
}
if (comm=='2')
{
if (r%2==0)
h=(h+1)%2;
else
v=(v+1)%2;
r=(r+3)%4;
}
if (comm=='H')
{
if (r%2==0)
h=(h+1)%2;
else
v=(v+1)%2;
}
if (comm=='V')
{
if (r%2==0)
v=(v+1)%2;
else
h=(h+1)%2;
}
if (comm>='A' && comm<='C')
r=(r+(comm-'A'+1))%4;
if (comm>='X' && comm<='Z')
r=(r+('Z'-comm+1))%4;
}
if (h==1)
{
for (i=1;i<=n/2;i++)
for (j=1;j<=m;j++)
{
tt=a[i][j];
a[i][j]=a[n-i+1][j];
a[n-i+1][j]=tt;
}
}
if (v==1)
{
for (i=1;i<=n;i++)
for (j=1;j<=m/2;j++)
{
tt=a[i][j];
a[i][j]=a[i][m-j+1];
a[i][m-j+1]=tt;
}
}
if (r==0)
{
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
b[i][j]=a[i][j];
}
if (r==1)
{
for (i=1;i<=m;i++)
for (j=1;j<=n;j++)
b[i][j]=a[n-j+1][i];
t=n;n=m;m=t;
}
if (r==2)
{
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
b[i][j]=a[n-i+1][m-j+1];
}
if (r==3)
{
for (i=1;i<=m;i++)
for (j=1;j<=n;j++)
b[i][j]=a[j][m-i+1];
t=n;n=m;m=t;
}
cout<<n<<" "<<m<<"\n";
for (i=1;i<=n;i++)
{
for (j=1;j<=m;j++)
cout<<b[i][j];
cout<<"\n";
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -