Submission #54100168


Source Code Expand

def is_valid_combination(keys, K, test_cases):
    for C, A, R in test_cases:
        valid_key_count = sum(1 for key in A if keys[key])
        if (R == 'o' and valid_key_count < K) or (R == 'x' and valid_key_count >= K):
            return False
    return True

def count_valid_combinations(N, M, K, test_cases):
    valid_combinations = 0
    for combination in range(1 << N):
        keys = [bool(combination & (1 << i)) for i in range(N)]
        if is_valid_combination(keys, K, test_cases):
            valid_combinations += 1
    return valid_combinations

def main():
    N, M, K = map(int, input().split())

    test_cases = []
    for _ in range(M):
        parts = input().split()
        C = int(parts[0])
        A = list(map(lambda x: int(x) - 1, parts[1:C+1]))
        R = parts[C+1]
        test_cases.append((C, A, R))

    result = count_valid_combinations(N, M, K, test_cases)
    print(result)

if __name__ == "__main__":
    main()

Submission Info

Submission Time
Task C - Keys
User mu16
Language Python (PyPy 3.10-v7.3.12)
Score 300
Code Size 986 Byte
Status AC
Exec Time 965 ms
Memory 85608 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 60
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt
Case Name Status Exec Time Memory
sample_01.txt AC 55 ms 76476 KiB
sample_02.txt AC 55 ms 76380 KiB
sample_03.txt AC 91 ms 83504 KiB
test_01.txt AC 54 ms 76656 KiB
test_02.txt AC 54 ms 76596 KiB
test_03.txt AC 54 ms 76524 KiB
test_04.txt AC 942 ms 85000 KiB
test_05.txt AC 103 ms 83440 KiB
test_06.txt AC 109 ms 84044 KiB
test_07.txt AC 965 ms 85388 KiB
test_08.txt AC 61 ms 81168 KiB
test_09.txt AC 95 ms 83508 KiB
test_10.txt AC 56 ms 76628 KiB
test_11.txt AC 54 ms 76676 KiB
test_12.txt AC 54 ms 76456 KiB
test_13.txt AC 54 ms 76636 KiB
test_14.txt AC 54 ms 76316 KiB
test_15.txt AC 84 ms 83928 KiB
test_16.txt AC 54 ms 76464 KiB
test_17.txt AC 62 ms 81312 KiB
test_18.txt AC 87 ms 83524 KiB
test_19.txt AC 65 ms 81384 KiB
test_20.txt AC 99 ms 83976 KiB
test_21.txt AC 60 ms 81128 KiB
test_22.txt AC 54 ms 76696 KiB
test_23.txt AC 54 ms 76528 KiB
test_24.txt AC 54 ms 76832 KiB
test_25.txt AC 55 ms 76680 KiB
test_26.txt AC 55 ms 76712 KiB
test_27.txt AC 54 ms 76404 KiB
test_28.txt AC 100 ms 83996 KiB
test_29.txt AC 424 ms 85452 KiB
test_30.txt AC 124 ms 84476 KiB
test_31.txt AC 170 ms 84428 KiB
test_32.txt AC 89 ms 83620 KiB
test_33.txt AC 199 ms 84968 KiB
test_34.txt AC 151 ms 85168 KiB
test_35.txt AC 148 ms 84796 KiB
test_36.txt AC 162 ms 84940 KiB
test_37.txt AC 345 ms 84672 KiB
test_38.txt AC 163 ms 85228 KiB
test_39.txt AC 802 ms 84480 KiB
test_40.txt AC 109 ms 83732 KiB
test_41.txt AC 466 ms 85052 KiB
test_42.txt AC 127 ms 84860 KiB
test_43.txt AC 293 ms 84860 KiB
test_44.txt AC 179 ms 84736 KiB
test_45.txt AC 101 ms 83636 KiB
test_46.txt AC 174 ms 85608 KiB
test_47.txt AC 137 ms 85076 KiB
test_48.txt AC 180 ms 85464 KiB
test_49.txt AC 181 ms 84492 KiB
test_50.txt AC 89 ms 83900 KiB
test_51.txt AC 128 ms 84844 KiB
test_52.txt AC 125 ms 84536 KiB
test_53.txt AC 658 ms 84584 KiB
test_54.txt AC 126 ms 84184 KiB
test_55.txt AC 209 ms 83920 KiB
test_56.txt AC 129 ms 84292 KiB
test_57.txt AC 760 ms 84764 KiB