数据过脱碳甲醛
查看原帖
数据过脱碳甲醛
1272259
cgxd楼主2024/8/21 08:54
#include<bits/stdc++.h>
using namespace std;
int n;
vector<string> v1, v2;
vector<string> turn(int op, vector<string> v){
	switch(op){
		case 1:{
			vector<string> v1(v.size(), string(v.size(), ' '));
			for(size_t i = 0; i < v.size(); ++i){
				for(size_t j = 0; j < v[i].size(); ++j)
					v1[j][v.size() - i - 1lu] = v[i][j];
			}return v1;
		}case 2:{
			for(string &s: v)
				reverse(s.begin(), s.end());
			reverse(v.begin(), v.end());
			return v;
		}case 3:{
			vector<string> v1(v.size(), string(v.size(), ' '));
			for(size_t i = 0; i < v.size(); ++i){
				for(size_t j = 0; j < v[i].size(); ++j)
					v1[v.size() - j - 1lu][i] = v[i][j];
			}return v1;
		}case 4:{
			for(string &s: v)
				reverse(s.begin(), s.end());
			return v;
		}case 5:{
			return turn(1, turn(4, v));
		}case 6:{
			return turn(2, turn(4, v));
		}case 7:{
			return turn(3/*此处3提交时打成了2,竟然也AC了*/, turn(4, v));
		}case 8:{
			return v;
		}
	}return v2;
}signed main(){
	ios::sync_with_stdio(0);
	cin.tie(0), cout.tie(0);
	cin >> n;
	for(int i = 1; i <= n; ++i){
		string s;
		cin >> s;
		v1.push_back(s);
	}for(int i = 1; i <= n; ++i){
		string s;
		cin >> s;
		v2.push_back(s);
	}for(int i = 1; i <= 9; ++i){
		if(turn(i, v1) == v2){
			if(i <= 5){
				cout << i;
				return 0;
			}else if(i == 6){
				cout << 5;
				return 0;
			}else{
				cout << i - 2;
				return 0;
			}
		}
	}return 0;
}
2024/8/21 08:54
加载中...