Codeforces Round #296 (Div. 2)
程序员文章站
2022-06-14 13:26:12
...
题目: http://codeforces.com/contest/527/problem/B 题意: 给出两串n( 1?≤? n ?≤?200?000 )个字母的字符串, 求出最多交换一对数, 使得不相同对数变少,求出不相同的对数以及交换的数的位置,若不需交换则输出-1,-1. 思路: 用矩阵记录两个串相同位置不同的字
题目:
http://codeforces.com/contest/527/problem/B
题意:
给出两串n(1?≤?n?≤?200?000)个字母的字符串, 求出最多交换一对数, 使得不相同对数变少,求出不相同的对数以及交换的数的位置,若不需交换则输出-1,-1.
思路:
用矩阵记录两个串相同位置不同的字母, 并记录每一个出现的字母的位置. 计算不相同的对数ans.
先枚举一遍字符串, 若f[i][j] == f[j][i] == 1, 则ans -= 2;
否则不相同的字母对中t字母中s串存在, 则交换,且ans--.
AC.
#include#include #include #include #include using namespace std; const int maxn = 200005; char s[maxn], t[maxn]; bool f[30][30]; vector v[30]; int n, ans; void solve() { int a = -1, b = -1; bool ok1 = 0, ok2 = 0; for(int i = 0; i
上一篇: oracle中的内连接和外连接
下一篇: SSDB高性能NoSQL数据库
推荐阅读
-
Codeforces Round #266 (Div. 2) B. Wonder Room_html/css_WEB-ITnose
-
Codeforces Round #258 (Div. 2)Devu and Flowers 容斥原理_html/css_WEB-ITnose
-
Codeforces Round #595 (Div. 3)D1D2 贪心 STL
-
Codeforces Round #655 (Div. 2) A. Omkar and Completion
-
Codeforces Round #656 (Div. 3)D. a-Good String(递归+dfs)
-
Codeforces Round #487 (Div. 2)
-
CodeForces 1324 - Codeforces Round #627 (Div. 3)
-
Codeforces Round #649 (Div. 2)-B. Most socially-distanced subsequence(思维)
-
Codeforces Round #649 (Div. 2) C-Ehab and Prefix MEXs
-
Educational Codeforces Round 71 (Rated for Div. 2)E. XOR Guessing