Submission #50014682


Source Code Expand

#include <bits/stdc++.h>

typedef long long valueType;
typedef std::vector<valueType> ValueVector;
typedef std::vector<ValueVector> ValueMatrix;
typedef std::vector<ValueMatrix> ValueCube;
typedef std::string string;
typedef std::vector<string> StringVector;
typedef std::vector<bool> bitset;
typedef std::vector<bitset> BitMatrix;
typedef std::pair<valueType, valueType> ValuePair;
typedef std::vector<ValuePair> PairVector;
typedef std::vector<PairVector> PairMatrix;
typedef std::tuple<valueType, valueType, valueType> ValueTuple;
typedef std::vector<ValueTuple> TupleVector;
typedef std::vector<TupleVector> TupleMatrix;
typedef std::set<valueType> ValueSet;

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    std::cout.tie(nullptr);

    valueType P, B, N, M;

    std::cin >> P >> B >> N >> M;

    if (P > N + 1) {
        std::cout << "Yes" << std::endl;

        return 0;
    }

    PairVector edges(M);

    for (auto &[u, v] : edges) {
        std::cin >> u >> v;

        --u;
    }

    valueType const S = 1 << (N + 1);

    bitset ok(S, true);

    for (valueType s = 0; s < S; ++s) {
        bitset inSet(N + 1, false);

        for (valueType i = 0; i <= N; ++i)
            if ((s >> i) & 1)
                inSet[i] = true;

        for (auto const &[u, v] : edges) {
            if (inSet[u] && inSet[v])
                ok[s] = false;
        }
    }

    ValueVector F(S, std::numeric_limits<valueType>::max() >> 10);

    F[0] = 0;

    for (valueType s = 0; s < S; ++s) {
        for (valueType t = s; t > 0; t = (t - 1) & s)
            if (ok[t])
                F[s] = std::min(F[s], F[s ^ t] + 1);
    }

    if (F[S - 1] <= P) {
        std::cout << "Yes" << std::endl;
    } else {
        std::cout << "No" << std::endl;
    }

    return 0;
}

Submission Info

Submission Time
Task D - Rolling Hash
User UserUnauthorized
Language C++ 20 (gcc 12.2)
Score 600
Code Size 1882 Byte
Status AC
Exec Time 258 ms
Memory 4224 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 3
AC × 118
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_1_00.txt, 01_random_1_01.txt, 01_random_1_02.txt, 01_random_1_03.txt, 01_random_1_04.txt, 02_random_2_00.txt, 02_random_2_01.txt, 02_random_2_02.txt, 02_random_2_03.txt, 02_random_2_04.txt, 02_random_2_05.txt, 02_random_2_06.txt, 02_random_2_07.txt, 02_random_2_08.txt, 02_random_2_09.txt, 02_random_2_10.txt, 02_random_2_11.txt, 03_perfect_00.txt, 03_perfect_01.txt, 03_perfect_02.txt, 03_perfect_03.txt, 03_perfect_04.txt, 03_perfect_05.txt, 04_randomized_killer_1_00.txt, 04_randomized_killer_1_01.txt, 04_randomized_killer_1_02.txt, 04_randomized_killer_1_03.txt, 04_randomized_killer_1_04.txt, 04_randomized_killer_1_05.txt, 04_randomized_killer_1_06.txt, 04_randomized_killer_1_07.txt, 04_randomized_killer_1_08.txt, 04_randomized_killer_1_09.txt, 04_randomized_killer_1_10.txt, 04_randomized_killer_1_11.txt, 04_randomized_killer_1_12.txt, 04_randomized_killer_1_13.txt, 04_randomized_killer_1_14.txt, 04_randomized_killer_1_15.txt, 04_randomized_killer_1_16.txt, 04_randomized_killer_1_17.txt, 04_randomized_killer_1_18.txt, 04_randomized_killer_1_19.txt, 04_randomized_killer_1_20.txt, 04_randomized_killer_1_21.txt, 04_randomized_killer_1_22.txt, 04_randomized_killer_1_23.txt, 04_randomized_killer_1_24.txt, 04_randomized_killer_1_25.txt, 04_randomized_killer_1_26.txt, 04_randomized_killer_1_27.txt, 04_randomized_killer_1_28.txt, 04_randomized_killer_1_29.txt, 04_randomized_killer_1_30.txt, 04_randomized_killer_1_31.txt, 05_randomized_killer_2_00.txt, 05_randomized_killer_2_01.txt, 05_randomized_killer_2_02.txt, 05_randomized_killer_2_03.txt, 05_randomized_killer_2_04.txt, 05_randomized_killer_2_05.txt, 05_randomized_killer_2_06.txt, 05_randomized_killer_2_07.txt, 05_randomized_killer_2_08.txt, 05_randomized_killer_2_09.txt, 05_randomized_killer_2_10.txt, 05_randomized_killer_2_11.txt, 05_randomized_killer_2_12.txt, 05_randomized_killer_2_13.txt, 05_randomized_killer_2_14.txt, 05_randomized_killer_2_15.txt, 05_randomized_killer_2_16.txt, 05_randomized_killer_2_17.txt, 05_randomized_killer_2_18.txt, 05_randomized_killer_2_19.txt, 05_randomized_killer_2_20.txt, 05_randomized_killer_2_21.txt, 05_randomized_killer_2_22.txt, 05_randomized_killer_2_23.txt, 06_randomized_killer_3_00.txt, 06_randomized_killer_3_01.txt, 06_randomized_killer_3_02.txt, 06_randomized_killer_3_03.txt, 06_randomized_killer_3_04.txt, 06_randomized_killer_3_05.txt, 06_randomized_killer_3_06.txt, 06_randomized_killer_3_07.txt, 06_randomized_killer_3_08.txt, 06_randomized_killer_3_09.txt, 07_few_ways_00.txt, 07_few_ways_01.txt, 07_few_ways_02.txt, 07_few_ways_03.txt, 07_few_ways_04.txt, 07_few_ways_05.txt, 07_few_ways_06.txt, 07_few_ways_07.txt, 08_equals_p_00.txt, 08_equals_p_01.txt, 08_equals_p_02.txt, 08_equals_p_03.txt, 08_equals_p_04.txt, 08_equals_p_05.txt, 08_equals_p_06.txt, 08_equals_p_07.txt, 09_equals_p_plus_1_00.txt, 09_equals_p_plus_1_01.txt, 09_equals_p_plus_1_02.txt, 09_equals_p_plus_1_03.txt, 09_equals_p_plus_1_04.txt, 09_equals_p_plus_1_05.txt, 09_equals_p_plus_1_06.txt, 09_equals_p_plus_1_07.txt, 10_path_00.txt, 10_path_01.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3420 KiB
00_sample_01.txt AC 1 ms 3484 KiB
00_sample_02.txt AC 1 ms 3484 KiB
01_random_1_00.txt AC 1 ms 3540 KiB
01_random_1_01.txt AC 1 ms 3336 KiB
01_random_1_02.txt AC 1 ms 3424 KiB
01_random_1_03.txt AC 1 ms 3424 KiB
01_random_1_04.txt AC 1 ms 3336 KiB
02_random_2_00.txt AC 1 ms 3476 KiB
02_random_2_01.txt AC 1 ms 3424 KiB
02_random_2_02.txt AC 1 ms 3424 KiB
02_random_2_03.txt AC 12 ms 3472 KiB
02_random_2_04.txt AC 4 ms 3548 KiB
02_random_2_05.txt AC 1 ms 3416 KiB
02_random_2_06.txt AC 5 ms 3548 KiB
02_random_2_07.txt AC 1 ms 3420 KiB
02_random_2_08.txt AC 2 ms 3428 KiB
02_random_2_09.txt AC 2 ms 3488 KiB
02_random_2_10.txt AC 29 ms 3492 KiB
02_random_2_11.txt AC 29 ms 3560 KiB
03_perfect_00.txt AC 6 ms 3492 KiB
03_perfect_01.txt AC 3 ms 3464 KiB
03_perfect_02.txt AC 2 ms 3420 KiB
03_perfect_03.txt AC 30 ms 3412 KiB
03_perfect_04.txt AC 13 ms 3412 KiB
03_perfect_05.txt AC 6 ms 3612 KiB
04_randomized_killer_1_00.txt AC 198 ms 4052 KiB
04_randomized_killer_1_01.txt AC 199 ms 4044 KiB
04_randomized_killer_1_02.txt AC 198 ms 4220 KiB
04_randomized_killer_1_03.txt AC 192 ms 4148 KiB
04_randomized_killer_1_04.txt AC 192 ms 4216 KiB
04_randomized_killer_1_05.txt AC 192 ms 4056 KiB
04_randomized_killer_1_06.txt AC 195 ms 4124 KiB
04_randomized_killer_1_07.txt AC 199 ms 4212 KiB
04_randomized_killer_1_08.txt AC 210 ms 4088 KiB
04_randomized_killer_1_09.txt AC 210 ms 4064 KiB
04_randomized_killer_1_10.txt AC 211 ms 4112 KiB
04_randomized_killer_1_11.txt AC 210 ms 4104 KiB
04_randomized_killer_1_12.txt AC 213 ms 4048 KiB
04_randomized_killer_1_13.txt AC 214 ms 4056 KiB
04_randomized_killer_1_14.txt AC 208 ms 4128 KiB
04_randomized_killer_1_15.txt AC 215 ms 4124 KiB
04_randomized_killer_1_16.txt AC 237 ms 4152 KiB
04_randomized_killer_1_17.txt AC 235 ms 4116 KiB
04_randomized_killer_1_18.txt AC 240 ms 4060 KiB
04_randomized_killer_1_19.txt AC 247 ms 4012 KiB
04_randomized_killer_1_20.txt AC 243 ms 3980 KiB
04_randomized_killer_1_21.txt AC 244 ms 4052 KiB
04_randomized_killer_1_22.txt AC 242 ms 4128 KiB
04_randomized_killer_1_23.txt AC 245 ms 4148 KiB
04_randomized_killer_1_24.txt AC 248 ms 4024 KiB
04_randomized_killer_1_25.txt AC 248 ms 4092 KiB
04_randomized_killer_1_26.txt AC 251 ms 4132 KiB
04_randomized_killer_1_27.txt AC 254 ms 4048 KiB
04_randomized_killer_1_28.txt AC 257 ms 4204 KiB
04_randomized_killer_1_29.txt AC 252 ms 4100 KiB
04_randomized_killer_1_30.txt AC 250 ms 4048 KiB
04_randomized_killer_1_31.txt AC 252 ms 4112 KiB
05_randomized_killer_2_00.txt AC 224 ms 3984 KiB
05_randomized_killer_2_01.txt AC 230 ms 4128 KiB
05_randomized_killer_2_02.txt AC 222 ms 4124 KiB
05_randomized_killer_2_03.txt AC 228 ms 3980 KiB
05_randomized_killer_2_04.txt AC 223 ms 4216 KiB
05_randomized_killer_2_05.txt AC 227 ms 4044 KiB
05_randomized_killer_2_06.txt AC 232 ms 4060 KiB
05_randomized_killer_2_07.txt AC 237 ms 3940 KiB
05_randomized_killer_2_08.txt AC 232 ms 4052 KiB
05_randomized_killer_2_09.txt AC 241 ms 4124 KiB
05_randomized_killer_2_10.txt AC 234 ms 4224 KiB
05_randomized_killer_2_11.txt AC 240 ms 4044 KiB
05_randomized_killer_2_12.txt AC 247 ms 4060 KiB
05_randomized_killer_2_13.txt AC 253 ms 4128 KiB
05_randomized_killer_2_14.txt AC 247 ms 4068 KiB
05_randomized_killer_2_15.txt AC 254 ms 4100 KiB
05_randomized_killer_2_16.txt AC 247 ms 4116 KiB
05_randomized_killer_2_17.txt AC 253 ms 4064 KiB
05_randomized_killer_2_18.txt AC 254 ms 4136 KiB
05_randomized_killer_2_19.txt AC 256 ms 4132 KiB
05_randomized_killer_2_20.txt AC 254 ms 4044 KiB
05_randomized_killer_2_21.txt AC 255 ms 4100 KiB
05_randomized_killer_2_22.txt AC 255 ms 4200 KiB
05_randomized_killer_2_23.txt AC 256 ms 4060 KiB
06_randomized_killer_3_00.txt AC 181 ms 3976 KiB
06_randomized_killer_3_01.txt AC 182 ms 4044 KiB
06_randomized_killer_3_02.txt AC 182 ms 4204 KiB
06_randomized_killer_3_03.txt AC 182 ms 4124 KiB
06_randomized_killer_3_04.txt AC 182 ms 4100 KiB
06_randomized_killer_3_05.txt AC 184 ms 4112 KiB
06_randomized_killer_3_06.txt AC 185 ms 4044 KiB
06_randomized_killer_3_07.txt AC 185 ms 4064 KiB
06_randomized_killer_3_08.txt AC 184 ms 4128 KiB
06_randomized_killer_3_09.txt AC 184 ms 3980 KiB
07_few_ways_00.txt AC 221 ms 4056 KiB
07_few_ways_01.txt AC 239 ms 4088 KiB
07_few_ways_02.txt AC 252 ms 4120 KiB
07_few_ways_03.txt AC 255 ms 4056 KiB
07_few_ways_04.txt AC 223 ms 4048 KiB
07_few_ways_05.txt AC 237 ms 4124 KiB
07_few_ways_06.txt AC 252 ms 4096 KiB
07_few_ways_07.txt AC 258 ms 4220 KiB
08_equals_p_00.txt AC 244 ms 4104 KiB
08_equals_p_01.txt AC 211 ms 4048 KiB
08_equals_p_02.txt AC 246 ms 4128 KiB
08_equals_p_03.txt AC 224 ms 4124 KiB
08_equals_p_04.txt AC 257 ms 4132 KiB
08_equals_p_05.txt AC 245 ms 4120 KiB
08_equals_p_06.txt AC 257 ms 4104 KiB
08_equals_p_07.txt AC 255 ms 3980 KiB
09_equals_p_plus_1_00.txt AC 250 ms 4112 KiB
09_equals_p_plus_1_01.txt AC 197 ms 4120 KiB
09_equals_p_plus_1_02.txt AC 247 ms 4124 KiB
09_equals_p_plus_1_03.txt AC 211 ms 4124 KiB
09_equals_p_plus_1_04.txt AC 257 ms 4052 KiB
09_equals_p_plus_1_05.txt AC 222 ms 4048 KiB
09_equals_p_plus_1_06.txt AC 258 ms 4096 KiB
09_equals_p_plus_1_07.txt AC 242 ms 4100 KiB
10_path_00.txt AC 167 ms 4096 KiB
10_path_01.txt AC 179 ms 4068 KiB