給定兩個長度分別為
定義
字串
字串
以下為提供的解法,請構造出一筆滿足題目條件的測資讓該程式碼 WA。
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false), cin.tie(0);
int n, m;
string s, t;
cin >> n >> m >> s >> t;
string revs(s.rbegin(), s.rend()), revt(t.rbegin(), t.rend());
s = "$" + s;
revs = "$" + revs;
t = "$" + t;
revt = "$" + revt;
vector dp(n + 1, vector (n + 1, vector (m + 1, vector <int>(m + 1, 0))));
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
for (int k = 1; k <= m; ++k) {
for (int l = 1; l <= m; ++l) {
if (s[i] == revs[j] && s[i] == t[k] && s[i] == revt[l]) {
dp[i][j][k][l] = dp[i - 1][j - 1][k - 1][l - 1] + 1;
} else {
dp[i][j][k][l] = max({dp[i - 1][j][k][l],
dp[i][j - 1][k][l],
dp[i][j][k - 1][l],
dp[i][j][k][l - 1]});
}
}
}
}
}
cout << dp[n][n][m][m] << '\n';
}
順帶一提,在 PreExam 中共有 10 個人寫過這個解,而出題者也寫過 QQ。
輸入第一行有兩個正整數
輸入第二行有一個長度為
輸入第三行有一個長度為
請輸出一行,上面有一個整數代表字串
8 8 acbcabaa aabbccba
5
14 8 ioicampisgreat wiwihorz
2
7 7 rotator rotator
7
以下程式碼能產生本題合法但一定不會讓你得到 AC 的測試資料:
#include <stdio.h>
int main() {
puts("3 4");
puts("ioi");
puts("camp");
}
IOICamp 2024 Day1 pT
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0 | 無額外限制 | 100 |