Submission #955845

# Submission time Handle Problem Language Result Execution time Memory
955845 2024-03-31T15:21:05 Z aymanrs Misspelling (JOI22_misspelling) C++14
28 / 100
906 ms 1048576 KB
#include<bits/stdc++.h>
using namespace std;
const int MOD = 1e9+7;
int fx(int x){
    if(x > MOD) x -= MOD;
    return x;
}
void solve(){
    int n, m;cin >> n >> m;
    vector<int> rnsp[n], rpsn[n];
    int ansp[n] = {0}, apsn[n] = {0};
    int psn[n], nsp[n];
    while(m--){
        int a, b; cin >> a >> b;a--;b--;
        if(a < b) {
            ansp[a+1]++;
            if(b+1 < n) rnsp[b+1].push_back(a);
        } else {
            swap(a,b);
            apsn[a+1]++;
            if(b+1 < n) rpsn[b+1].push_back(a);
        }
    }
    multiset<int> spsn, snsp;
    for(int i = 1;i < n;i++) {
        while(ansp[i]--) snsp.insert(i-1);
        while(apsn[i]--) spsn.insert(i-1);
        for(int k : rnsp[i]) snsp.erase(snsp.find(k));
        for(int k : rpsn[i]) spsn.erase(spsn.find(k));
        psn[i] = spsn.empty() ? i : *spsn.rbegin();
        nsp[i] = snsp.empty() ? i : *snsp.rbegin();
    }
    int dp[n+1][n+1][26];
    for(int j = 0;j <= n;j++) for(int i = 0;i < 26;i++) dp[n][j][i] = 1;
    for(int i = n-1;i;i--){
        for(int j = 0;j < i;j++){
            for(int k = 0;k < 26;k++){
                dp[i][j][k]=0;
                for(int l = psn[i] >= j && psn[i] <= i-1 ? k : 0;l < (nsp[i] >= j && nsp[i] <= i-1 ? k+1 : 26);l++){
                    dp[i][j][k] = fx(dp[i][j][k] + dp[i+1][l == k ? j : i][l]);
                }
            }
        }
    }
    int ans = 0;
    for(int i = 0;i < 26;i++) ans = fx(ans+dp[1][0][i]);
    cout <<ans << '\n';

}
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    solve();
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 408 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 408 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 344 KB Output is correct
15 Correct 15 ms 4440 KB Output is correct
16 Correct 8 ms 4440 KB Output is correct
17 Correct 6 ms 4444 KB Output is correct
18 Correct 5 ms 4444 KB Output is correct
19 Correct 5 ms 4576 KB Output is correct
20 Correct 4 ms 4444 KB Output is correct
21 Correct 5 ms 4444 KB Output is correct
22 Correct 7 ms 4700 KB Output is correct
23 Correct 25 ms 4576 KB Output is correct
24 Correct 6 ms 4696 KB Output is correct
25 Correct 4 ms 4444 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Runtime error 906 ms 1048576 KB Execution killed with signal 9
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 408 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 344 KB Output is correct
15 Correct 15 ms 4440 KB Output is correct
16 Correct 8 ms 4440 KB Output is correct
17 Correct 6 ms 4444 KB Output is correct
18 Correct 5 ms 4444 KB Output is correct
19 Correct 5 ms 4576 KB Output is correct
20 Correct 4 ms 4444 KB Output is correct
21 Correct 5 ms 4444 KB Output is correct
22 Correct 7 ms 4700 KB Output is correct
23 Correct 25 ms 4576 KB Output is correct
24 Correct 6 ms 4696 KB Output is correct
25 Correct 4 ms 4444 KB Output is correct
26 Runtime error 658 ms 1048576 KB Execution killed with signal 9
27 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 408 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 344 KB Output is correct
15 Correct 15 ms 4440 KB Output is correct
16 Correct 8 ms 4440 KB Output is correct
17 Correct 6 ms 4444 KB Output is correct
18 Correct 5 ms 4444 KB Output is correct
19 Correct 5 ms 4576 KB Output is correct
20 Correct 4 ms 4444 KB Output is correct
21 Correct 5 ms 4444 KB Output is correct
22 Correct 7 ms 4700 KB Output is correct
23 Correct 25 ms 4576 KB Output is correct
24 Correct 6 ms 4696 KB Output is correct
25 Correct 4 ms 4444 KB Output is correct
26 Correct 0 ms 348 KB Output is correct
27 Correct 1 ms 344 KB Output is correct
28 Correct 0 ms 348 KB Output is correct
29 Correct 0 ms 348 KB Output is correct
30 Runtime error 906 ms 1048576 KB Execution killed with signal 9
31 Halted 0 ms 0 KB -