AOJ 0133 - Rotation of a Pattern

回転ってどうやるの?と思って調べてコードを書きました.
しかし,それは逆回転だった.

#include <iostream>
#include <cstring>
int main(){
	char map[8][8],t_m[8][8];
	for(int i=0;i<8;i++){
		std::cin >> map[i];
	}

	for(int i=1;i<4;i++){
		//角度分(90,180,270)回転した配列を作る
		for(int y=0;y<8;y++){
			for(int x=0;x<8;x++){
				t_m[x][7-y] = map[y][x];
			}
		}

		memcpy(map,t_m,sizeof(t_m));

		std::cout << 90 * i << std::endl;
		for(int y=0;y<8;y++){
			for(int x=0;x<8;x++){
				std::cout << map[y][x];
			}
			std::cout << "\n";
		}
	}
}