Submission #915231

# Submission time Handle Problem Language Result Execution time Memory
915231 2024-01-23T14:33:26 Z Namkhing Digital Circuit (IOI22_circuit) C++17
7 / 100
3000 ms 6488 KB
#include "circuit.h"
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

const int Max = 1e5 + 1;
const int Mod = 1e9 + 2022;
ll n, m, dp[Max << 1][2];

vector<int> adj[Max];

void init(int N, int M, vector<int> P, vector<int> A) {
    n = N, m = M;

    for (int i = 1; i < N + M; i++) {
        adj[P[i]].push_back(i);
    }

    for (int i = 0; i < M; i++) {
        dp[N + i][A[i]] = 1;
    }
}

int count_ways(int L, int R) {
    for (int i = L; i <= R; i++) {
        swap(dp[i][0], dp[i][1]);
    }

    for (int i = n - 1; i >= 0; i--) {
        int l = adj[i][0];
        int r = adj[i][1];

        dp[i][0] = (dp[l][1] * dp[r][0] + dp[l][0] * dp[r][1] + 2 * dp[l][0] * dp[r][0]) % Mod;
        dp[i][1] = (dp[l][1] * dp[r][0] + dp[l][0] * dp[r][1] + 2 * dp[l][1] * dp[r][1]) % Mod;
    }

    return dp[0][1];
}

# Verdict Execution time Memory Grader output
1 Correct 2 ms 4696 KB Output is correct
2 Incorrect 1 ms 4696 KB 1st lines differ - on the 1st token, expected: '1', found: '0'
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4696 KB Output is correct
2 Correct 1 ms 4696 KB Output is correct
3 Correct 2 ms 4696 KB Output is correct
4 Correct 1 ms 4696 KB Output is correct
5 Correct 2 ms 4696 KB Output is correct
6 Correct 1 ms 4696 KB Output is correct
7 Correct 2 ms 4696 KB Output is correct
8 Correct 2 ms 4696 KB Output is correct
9 Correct 2 ms 4852 KB Output is correct
10 Correct 2 ms 4696 KB Output is correct
11 Correct 2 ms 4696 KB Output is correct
12 Correct 1 ms 4696 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 4696 KB Output is correct
2 Incorrect 1 ms 4696 KB 1st lines differ - on the 1st token, expected: '1', found: '0'
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3009 ms 6488 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3009 ms 6488 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4696 KB Output is correct
2 Correct 1 ms 4696 KB Output is correct
3 Correct 2 ms 4696 KB Output is correct
4 Correct 1 ms 4696 KB Output is correct
5 Correct 2 ms 4696 KB Output is correct
6 Correct 1 ms 4696 KB Output is correct
7 Correct 2 ms 4696 KB Output is correct
8 Correct 2 ms 4696 KB Output is correct
9 Correct 2 ms 4852 KB Output is correct
10 Correct 2 ms 4696 KB Output is correct
11 Correct 2 ms 4696 KB Output is correct
12 Correct 1 ms 4696 KB Output is correct
13 Execution timed out 3009 ms 6488 KB Time limit exceeded
14 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 4696 KB Output is correct
2 Incorrect 1 ms 4696 KB 1st lines differ - on the 1st token, expected: '1', found: '0'
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 4696 KB Output is correct
2 Incorrect 1 ms 4696 KB 1st lines differ - on the 1st token, expected: '1', found: '0'
3 Halted 0 ms 0 KB -