1. 程式人生 > >【ACM】影象旋轉

【ACM】影象旋轉

逆時針

//影象旋轉
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
using namespace std;
int main ()
{
	int a[105][105];
	int m,n,i,j;
	while(scanf("%d%d",&n,&m)!=EOF)//n行m列 
	{
		for(i=0;i<n;i++)
		{
			for(j=0;j<m;j++)
			{
				cin>>a[i][j];
			}
		}
		for(i=m-1;i>=0;i--)
		{
			for(j=0;j<n;j++)
			{
				cout<<a[j][i];
				if(j!=(n-1))	cout<<" ";
			}
			cout<<endl;
		}
	}
	return 0;
} 

順時針

//影象旋轉
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
using namespace std;
int main ()
{
	int a[105][105];
	int m,n,i,j;
	while(scanf("%d%d",&n,&m)!=EOF)//n行m列 
	{
		for(i=0;i<n;i++)
		{
			for(j=0;j<m;j++)
			{
				cin>>a[i][j];
			}
		}
		for(i=0;i<m;i++)
		{
			for(j=n-1;j>=0;j--)
			{
				cout<<a[j][i];
				if(j)	cout<<" ";
			}
			cout<<endl;
		}
	}
	return 0;
}