萌新求 hack
查看原帖
萌新求 hack
298549
SIXIANG32楼主2022/6/16 22:56

如题

//SIXIANG
#include <iostream>
#include <string>
#define MAXN 100000
#define QWQ cout << "QWQ" << endl;
using namespace std;
int n;
int main() {
//	freopen("date.txt", "r", stdin);
//	freopen("out.txt", "w", stdout);
	int T; cin >> T;
	string in1, in2;
	while(T--) {
		cin >> n;
		string s1 = "", s2 = "";
		bool flag = 0;
		cin >> in1 >> in2;
		int A = 0, B = 0, C = 0;
		for(int p = 0; p < in1.size(); p++)
			if(in1[p] == 'a') A++;
			else if(in1[p] == 'b') B++;
			else if(in1[p] == 'c') C++;
		
		for(int p = 0; p < in2.size(); p++)
			if(in2[p] == 'a') A--;
			else if(in2[p] == 'b') B--;
			else if(in2[p] == 'c') C--;
		
		if(A || B || C) {
			cout << "NO" << endl;
			continue;
		}
		
		for(int p = 0; p < n; p++)
			if(in1[p] != in2[p])
				s1 += in1[p], s2 += in2[p];
		int posB = 1145141919;
		for(int p = 0; p < s2.size(); p++) {
			if(s2[p] == 'b') posB = p;
			if(s2[p] == 'a' && posB > p) {
				cout << "NO" << endl;
				flag = 1;
				break;
			}
		}
		if(flag) continue;
		posB = -1145141919;
		for(int p = s2.size() - 1; p > 0; p--) {
			if(s2[p] == 'b') posB = p;
			if(s2[p] == 'c' && posB < p) {
				cout << "NO" << endl;
				flag = 1;
				break;
			}
		}
		if(!flag) cout << "YES" << endl;
	}
}

这个代码显而易见是假的因为读入串压根就没怎么用(我是什么聪明玩意儿写出来这种东西)

但是自己又 hack 不掉自己/kk

求 hack

2022/6/16 22:56
加载中...