求调!想拿20分暴力,但写不对
查看原帖
求调!想拿20分暴力,但写不对
1028771
Retoayd楼主2024/10/3 08:18
#include <bits/stdc++.h>
#define int long long
using namespace std;
int n, m, l[200005], r[200005];
string s1, s2, ans;
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0), cout.tie(0);
	cin >> n >> m >> s1 >> s2;
	for(int i = 1; i <= m; i++)
		cin >> l[i] >> r[i];
	for(int i = 0; i <= (1 << m) - 1; i++) {
		string sum1 = s1, sum2 = s2;
		char t;
		for(int j = m - 1; j >= 0; j--)
			if((i >> j) & 1)
				for(int k = l[m - j]; k <= r[m - j]; k++)
					t = sum1[k], sum1[k] = sum2[k], sum2[k] = t;
		ans = max(ans, sum1);
	}
	cout << ans << endl;
	return 0;
}
2024/10/3 08:18
加载中...