QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#644530#7618. Pattern Searchucup-team4479#WA 0ms3772kbC++231.4kb2024-10-16 14:29:222024-10-16 14:29:22

Judging History

你现在查看的是最新测评结果

  • [2024-10-16 14:29:22]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3772kb
  • [2024-10-16 14:29:22]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
int sbac[30], tbac[30];
void solve() {
    string s, t;
    cin >> s >> t;
    int n = s.length(), m = t.length();
    for (int i = 0; i < n; ++i) sbac[s[i] - 'a']++;
    for (int i = 0; i < m; ++i) tbac[t[i] - 'a']++;
    int border = 0;
    int cir = 0;
    for (int k = m; k >= 2; --k) {
        string p = "", q = "";
        bool flag = 1;
        for (int i = 0; i < 26; ++i) {
            if (!tbac[i]) continue;
            char ch = 'a' + i;
            if (tbac[i] % k == 0) p = p + ch;
            else if (tbac[i] % k == k - 1) q = q + ch;
            else {
                flag = 0;
                break;
            }
        }
        if (!flag) continue;
        t = p;
        for (int i = 2; i <= k; ++i)
            t = t + q + p;
        border = m - p.length() - q.length();
        break;
    }
    // cout << t << " " << border << endl;
    int now = 0, ans = 0;
    for (int i = 0; i < n; ++i) {
        if (sbac[t[now] - 'a']) {
            sbac[t[now] - 'a']--;
            if (now == m - 1) ans++, now = border;
            else now++;
        } else break;
    }
    cout << ans << endl;
    for (int i = 0; i < 26; ++i) sbac[i] = tbac[i] = 0;
}
int main() {
    cin.tie(nullptr) -> ios::sync_with_stdio(false);
    cout.tie(0);
    int T;
    cin >> T;
    while (T--) solve();
    return 0;
}
/*
3
bajkaaall aal
abca cba
bajkaaaabbbb aaaabbbb
*/

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3544kb

input:

2
bajkaaall aal
abca cba

output:

2
1

result:

ok 2 number(s): "2 1"

Test #2:

score: -100
Wrong Answer
time: 0ms
memory: 3772kb

input:

16
a a
a b
b a
aa a
ab aa
ab b
ab c
aaz az
abcde edcba
aaaaaaaaaaaabbb aaaaaaaaabb
aaaaaazz az
aaaaaaaaaz zzzzz
gggggggggggggggggggge ggggeeee
hyphyphyphyphyphyphyphyphyphyphyphyp eeeeeeeeee
hyphyphyphyphyphyphyphyphyphyphyphype eeteeteeteet
aaaabbbbbbcccccccc aaabbbbbcccccc

output:

1
0
0
2
0
1
0
1
1
0
2
0
0
0
0
0

result:

wrong answer 10th numbers differ - expected: '2', found: '0'