Submission #22777524


Source Code Expand

import sys
import numpy as np

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines

def main(A, B, C):
    INF = 1 << 60
    A.sort()
    B.sort()
    C.sort()
    while len(A) % 2 == 1:
        A, B, C = B, C, A

    if len(B) % 2 == 0:
        return 0
    """偶奇奇パターンに帰着できた"""
    def calc(A, B):
        # AB距離の最小値
        if len(A) == 0:
            return INF
        RID = np.searchsorted(A, B)
        LID = RID - 1
        RID[RID == len(A)] -= 1
        LID[LID == -1] = 0
        return np.minimum(np.abs(A[RID] - B), np.abs(A[LID] - B)).min()

    ans = calc(B, C)
    ans = min(ans, calc(A, B) + calc(A, C))
    return ans

stdin = read().replace(b'R', b'0').replace(b'G', b'1').replace(b'B', b'2')
data = np.array(stdin.split(), np.int64)[1:]
num, col = data[::2], data[1::2]
A = num[col == 0]
B = num[col == 1]
C = num[col == 2]

print(main(A, B, C))

Submission Info

Submission Time
Task B - RGB Matching
User maspy
Language Python (3.8.2)
Score 500
Code Size 994 Byte
Status AC
Exec Time 210 ms
Memory 51528 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 82
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, random2_01.txt, random2_02.txt, random2_03.txt, random2_04.txt, random2_05.txt, random2_06.txt, random2_07.txt, random2_08.txt, random2_09.txt, random2_10.txt, random2_11.txt, random2_12.txt, random2_13.txt, random2_14.txt, random2_15.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, random_21.txt, random_22.txt, random_23.txt, random_24.txt, random_25.txt, random_26.txt, random_27.txt, random_28.txt, random_29.txt, random_30.txt, random_31.txt, random_32.txt, random_33.txt, random_34.txt, random_35.txt, random_36.txt, random_37.txt, random_38.txt, random_39.txt, random_40.txt, random_41.txt, random_42.txt, random_43.txt, random_44.txt, random_45.txt, random_46.txt, random_47.txt, random_48.txt, random_49.txt, random_50.txt, random_51.txt, random_52.txt, random_53.txt, random_54.txt, random_55.txt, random_56.txt, random_57.txt, random_58.txt, random_59.txt, random_60.txt, sample_01.txt, sample_02.txt, sample_03.txt
Case Name Status Exec Time Memory
hand_01.txt AC 159 ms 37568 KiB
hand_02.txt AC 151 ms 36712 KiB
hand_03.txt AC 148 ms 36956 KiB
hand_04.txt AC 155 ms 37308 KiB
random2_01.txt AC 207 ms 51524 KiB
random2_02.txt AC 206 ms 51352 KiB
random2_03.txt AC 208 ms 51468 KiB
random2_04.txt AC 210 ms 51528 KiB
random2_05.txt AC 207 ms 51460 KiB
random2_06.txt AC 118 ms 28240 KiB
random2_07.txt AC 135 ms 32588 KiB
random2_08.txt AC 148 ms 35376 KiB
random2_09.txt AC 197 ms 46680 KiB
random2_10.txt AC 150 ms 35320 KiB
random2_11.txt AC 114 ms 27484 KiB
random2_12.txt AC 109 ms 27016 KiB
random2_13.txt AC 110 ms 27508 KiB
random2_14.txt AC 112 ms 27244 KiB
random2_15.txt AC 112 ms 27464 KiB
random_01.txt AC 201 ms 49328 KiB
random_02.txt AC 206 ms 49348 KiB
random_03.txt AC 201 ms 49456 KiB
random_04.txt AC 206 ms 49256 KiB
random_05.txt AC 202 ms 49408 KiB
random_06.txt AC 205 ms 49432 KiB
random_07.txt AC 209 ms 49536 KiB
random_08.txt AC 207 ms 49236 KiB
random_09.txt AC 207 ms 49236 KiB
random_10.txt AC 205 ms 49312 KiB
random_11.txt AC 207 ms 49352 KiB
random_12.txt AC 202 ms 49352 KiB
random_13.txt AC 208 ms 49188 KiB
random_14.txt AC 199 ms 49340 KiB
random_15.txt AC 208 ms 49404 KiB
random_16.txt AC 206 ms 49264 KiB
random_17.txt AC 203 ms 49420 KiB
random_18.txt AC 210 ms 49356 KiB
random_19.txt AC 204 ms 49440 KiB
random_20.txt AC 209 ms 49252 KiB
random_21.txt AC 131 ms 31804 KiB
random_22.txt AC 116 ms 27688 KiB
random_23.txt AC 132 ms 31716 KiB
random_24.txt AC 148 ms 35664 KiB
random_25.txt AC 140 ms 32252 KiB
random_26.txt AC 145 ms 35468 KiB
random_27.txt AC 134 ms 31920 KiB
random_28.txt AC 183 ms 43068 KiB
random_29.txt AC 198 ms 47024 KiB
random_30.txt AC 179 ms 43416 KiB
random_31.txt AC 165 ms 39624 KiB
random_32.txt AC 155 ms 36352 KiB
random_33.txt AC 135 ms 32980 KiB
random_34.txt AC 120 ms 28560 KiB
random_35.txt AC 138 ms 32800 KiB
random_36.txt AC 186 ms 44368 KiB
random_37.txt AC 170 ms 40328 KiB
random_38.txt AC 153 ms 36476 KiB
random_39.txt AC 168 ms 40256 KiB
random_40.txt AC 185 ms 44544 KiB
random_41.txt AC 108 ms 27168 KiB
random_42.txt AC 111 ms 27120 KiB
random_43.txt AC 111 ms 27244 KiB
random_44.txt AC 113 ms 27160 KiB
random_45.txt AC 109 ms 27528 KiB
random_46.txt AC 111 ms 27444 KiB
random_47.txt AC 112 ms 27120 KiB
random_48.txt AC 115 ms 27276 KiB
random_49.txt AC 113 ms 27420 KiB
random_50.txt AC 113 ms 27120 KiB
random_51.txt AC 114 ms 27056 KiB
random_52.txt AC 112 ms 27344 KiB
random_53.txt AC 109 ms 26828 KiB
random_54.txt AC 113 ms 27336 KiB
random_55.txt AC 114 ms 27500 KiB
random_56.txt AC 113 ms 27108 KiB
random_57.txt AC 113 ms 27340 KiB
random_58.txt AC 112 ms 27244 KiB
random_59.txt AC 111 ms 27152 KiB
random_60.txt AC 111 ms 27292 KiB
sample_01.txt AC 113 ms 27064 KiB
sample_02.txt AC 112 ms 26988 KiB
sample_03.txt AC 114 ms 27112 KiB