import numpy as np
import hashlib
# 추첨 인원수
winner_num = 5
# BOJ 연습란을 텍스트로 긁어오면 됩니다 (랭킹, 아이디, A, B, C, ... 맨 윗줄 제외하고)
info = """
1 sadtreap 1 / 1 2 / 23 1 / 6 1 / 10 1 / 30 3 / 61 1 / 22 1 / 38 1 / 63 1 / 50 1 / 131 1 / 91 12 / 526
2 mathjuny 1 / 1 1 / 2 1 / 5 1 / 7 1 / 13 2 / 39 1 / 26 1 / 32 1 / 45 2 / 80 1 / 81 4 / 208 12 / 539
3 oh040411 1 / 2 1 / 3 1 / 5 2 / 28 1 / 12 1 / 21 2 / 53 1 / 41 3 / 106 1 / 74 1 / 127 0 / -- 11 / 472
4 menborong 1 / 8 1 / 9 2 / 32 1 / 14 1 / 23 1 / 36 1 / 42 2 / 75 1 / 67 2 / 102 1 / 143 0 / -- 11 / 551
5 luciaholic 1 / 1 1 / 1 1 / 3 1 / 6 1 / 15 2 / 46 1 / 37 2 / 67 2 / 85 5 / 181 1 / 117 0 / -- 11 / 559
6 dbgusdn012 1 / 1 1 / 2 1 / 5 1 / 7 1 / 13 1 / 39 1 / 25 3 / 103 1 / 85 1 / 95 3 / 193 0 / -- 11 / 568
7 sjhi00 1 / 1 1 / 3 1 / 10 1 / 13 1 / 22 1 / 55 1 / 43 1 / 73 2 / 162 1 / 93 1 / 112 0 / -- 11 / 587
8 pichulia 1 / 162 1 / 1 1 / 3 1 / 161 1 / 158 1 / 155 1 / 149 13 / 382 1 / 87 4 / 94 1 / 48 0 / -- 11 / 1400
9 79brue 1 / 1 1 / 2 1 / 4 1 / 7 1 / 11 1 / 15 1 / 49 1 / 41 1 / 36 1 / 26 0 / -- 0 / -- 10 / 192
10 akrobatik 1 / 2 1 / 3 1 / 5 1 / 8 1 / 16 2 / 46 2 / 51 1 / 63 1 / 82 1 / 54 0 / -- 2 / -- 10 / 330
11 kolorvxl 1 / 1 1 / 3 1 / 5 1 / 11 1 / 17 2 / 47 1 / 39 1 / 45 2 / 99 2 / 115 0 / -- 5 / -- 10 / 382
12 tony9402 1 / 19 1 / 20 1 / 24 1 / 27 1 / 40 1 / 75 1 / 42 1 / 46 1 / 104 2 / 97 1 / -- 0 / -- 10 / 494
13 cohenpf 1 / 1 1 / 2 1 / 4 1 / 6 2 / 31 2 / 45 2 / 56 1 / 47 2 / 106 4 / 198 0 / -- 3 / -- 10 / 496
14 kdg870918 1 / 1 1 / 4 1 / 6 1 / 8 2 / 37 1 / 105 3 / 81 1 / 50 2 / 108 0 / -- 1 / 160 0 / -- 10 / 560
15 powerdavid10 1 / 1 1 / 3 3 / 65 1 / 7 2 / 48 1 / 59 1 / 47 1 / 73 5 / 187 2 / 155 1 / -- 0 / -- 10 / 645
16 swoon 1 / 35 1 / 37 1 / 39 1 / 42 1 / 51 1 / 62 1 / 74 3 / 135 2 / 165 1 / 114 0 / -- 0 / -- 10 / 754
17 ishs311317 1 / 47 1 / 48 2 / 71 1 / 55 2 / 83 2 / 97 1 / 87 1 / 95 1 / 108 2 / 143 0 / -- 0 / -- 10 / 834
18 mushfique 1 / 72 1 / 73 1 / 74 1 / 74 1 / 75 1 / 76 1 / 102 1 / 103 3 / 177 1 / 106 2 / -- 3 / -- 10 / 932
19 xiaowuc1 1 / 70 1 / 71 1 / 74 1 / 75 1 / 80 2 / 117 1 / 94 2 / 124 1 / 128 2 / 145 0 / -- 0 / -- 10 / 978
20 tobey2j0 1 / 64 1 / 65 1 / 68 1 / 71 4 / 144 1 / 96 2 / 127 1 / 116 1 / 140 2 / 183 0 / -- 0 / -- 10 / 1074
21 nabina1395 1 / 1 1 / 2 1 / 5 1 / 7 1 / 14 1 / 71 2 / 63 1 / 54 0 / -- 2 / 145 0 / -- 0 / -- 9 / 362
22 kcits970 1 / 8 1 / 12 1 / 17 1 / 20 1 / 28 1 / 40 1 / 67 1 / 107 3 / 191 1 / -- 0 / -- 0 / -- 9 / 490
23 wariatros 1 / 3 1 / 7 1 / 14 1 / 20 1 / 34 1 / 49 1 / 75 4 / 236 1 / 168 0 / -- 0 / -- 0 / -- 9 / 606
24 hwcho98 1 / 2 1 / 4 2 / 32 1 / 15 2 / 45 2 / 100 4 / 118 1 / 156 2 / 137 0 / -- 0 / -- 0 / -- 9 / 609
25 yim2ul2et 2 / 22 1 / 5 1 / 10 1 / 14 3 / 85 1 / 76 1 / 107 1 / 122 0 / -- 2 / 197 0 / -- 0 / -- 9 / 638
26 loveisasong 1 / 32 1 / 34 1 / 39 1 / 47 1 / 60 1 / 73 1 / 89 1 / 107 2 / 199 0 / -- 0 / -- 0 / -- 9 / 680
27 dnjsgudtjr11 1 / 1 1 / 4 2 / 27 1 / 10 2 / 48 4 / 174 3 / 108 1 / 91 5 / 254 0 / -- 0 / -- 0 / -- 9 / 717
28 fermion5 1 / 179 1 / 175 1 / 160 1 / 132 2 / 160 1 / 167 1 / 115 0 / -- 0 / -- 5 / 121 1 / -- 5 / 236 9 / 1445
29 mythofys 1 / 1 1 / 3 1 / 5 1 / 8 1 / 13 1 / 25 3 / 85 3 / 101 0 / -- 0 / -- 0 / -- 0 / -- 8 / 241
30 javago 1 / 4 1 / 6 1 / 10 1 / 13 1 / 24 1 / 40 1 / 60 2 / -- 1 / 108 2 / -- 0 / -- 0 / -- 8 / 265
31 sungso376 1 / 11 1 / 17 1 / 15 2 / 43 1 / 33 2 / 67 3 / 103 1 / 80 0 / -- 0 / -- 0 / -- 0 / -- 8 / 369
32 s91as52d 1 / 1 1 / 3 1 / 6 1 / 12 1 / 23 6 / -- 1 / 91 1 / 112 3 / 217 0 / -- 0 / -- 0 / -- 8 / 465
33 wapas 1 / 14 1 / 23 1 / 26 2 / 53 1 / 57 3 / 124 1 / 95 1 / 106 0 / -- 0 / -- 3 / -- 0 / -- 8 / 498
34 cubic 1 / 2 1 / 5 2 / 31 1 / 17 1 / 31 2 / 117 1 / 121 3 / 195 0 / -- 0 / -- 0 / -- 0 / -- 8 / 519
35 ezh8n 1 / 2 1 / 3 3 / 51 1 / 16 1 / 42 2 / 137 4 / 156 1 / 148 0 / -- 0 / -- 0 / -- 0 / -- 8 / 555
36 kky085437 1 / 1 1 / 2 2 / 25 1 / 8 1 / 14 3 / 167 1 / 138 5 / 235 5 / -- 7 / -- 0 / -- 0 / -- 8 / 590
37 wlaud 2 / 21 1 / 2 1 / 4 1 / 6 2 / 37 5 / 132 2 / 50 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 7 / 252
38 sksksksk 1 / 17 1 / 19 1 / 22 1 / 25 3 / -- 1 / 56 1 / 91 2 / 178 0 / -- 0 / -- 0 / -- 0 / -- 7 / 408
39 gbs16_dongmin 2 / 40 1 / 24 1 / 29 1 / 35 3 / 97 1 / 111 1 / 132 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 7 / 468
40 junsu583 1 / 3 1 / 12 2 / 41 1 / 30 2 / 70 5 / 190 5 / 231 3 / -- 0 / -- 0 / -- 0 / -- 0 / -- 7 / 577
41 eka 1 / 111 1 / 113 1 / 116 1 / 119 1 / 130 1 / 136 1 / 152 3 / -- 0 / -- 0 / -- 0 / -- 0 / -- 7 / 877
42 additionalpass05 1 / 88 1 / 90 2 / 118 2 / 123 2 / 131 3 / 180 2 / 176 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 7 / 906
43 BothEarRim 1 / 15 1 / 18 1 / 26 1 / 33 1 / 52 2 / 94 3 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 238
44 isekaijoucho 1 / 7 1 / 10 1 / 15 4 / 91 1 / 85 2 / -- 2 / 155 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 363
45 binde73 1 / 25 1 / 29 2 / 57 1 / 43 1 / 89 3 / 170 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 413
46 scm8716 1 / 6 1 / 10 1 / 29 2 / 66 2 / 157 0 / -- 1 / 171 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 439
47 wodud0902 1 / 55 1 / 59 1 / 64 1 / 72 1 / 83 0 / -- 0 / -- 1 / 118 2 / -- 0 / -- 0 / -- 0 / -- 6 / 451
48 eonpyo6080 1 / 39 1 / 43 1 / 51 1 / 68 2 / 133 2 / 181 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 515
49 m4ushold 1 / 96 1 / 96 1 / 99 1 / 102 2 / 138 1 / 127 0 / -- 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 658
50 ddungsam 1 / 110 1 / 111 1 / 114 2 / 137 3 / 165 5 / 240 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 877
51 chineu364 1 / 129 2 / 151 2 / 156 1 / 139 2 / 170 2 / 181 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 6 / 926
52 forpractice 1 / 1 1 / 2 2 / 27 1 / 6 1 / 11 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 47
53 kdmdk 1 / 2 1 / 4 1 / 7 2 / 37 1 / 28 2 / -- 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 78
54 simnple 1 / 10 1 / 14 1 / 18 1 / 23 2 / 60 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 125
55 re_seon_jok 1 / 6 2 / 31 1 / 20 1 / 29 1 / 56 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 142
56 pkearth 1 / 23 1 / 24 2 / 47 1 / 30 1 / 34 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 158
57 minseo41 1 / 1 1 / 3 4 / 76 1 / 19 3 / 81 0 / -- 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 180
58 kali0705linux 1 / 6 1 / 8 3 / 61 1 / 28 3 / 97 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 200
59 lycoris1600 1 / 28 1 / 31 1 / 32 1 / 36 3 / 85 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 212
60 kep1er07 1 / 41 1 / 42 2 / 65 1 / 47 1 / 50 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 245
61 mitia 1 / 16 2 / 40 2 / 46 1 / 29 4 / 119 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 250
62 gi1dong2 1 / 24 1 / 27 3 / 79 1 / 44 2 / 95 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 269
63 sjunyung1496 1 / 28 1 / 40 3 / 77 1 / 46 2 / 81 0 / -- 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 272
64 lhlephuocdao 1 / 10 1 / 16 1 / 23 1 / 110 1 / 134 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 293
65 atrox711 1 / 37 1 / 40 2 / 64 1 / 49 3 / 111 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 301
66 kckyoung2 1 / -- 1 / 69 1 / -- 1 / 59 1 / -- 2 / 69 1 / -- 1 / 15 1 / -- 1 / 132 1 / -- 0 / -- 5 / 344
67 chleee 1 / 57 1 / 61 1 / 64 1 / 69 2 / 98 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 349
68 2023techacc 1 / 71 1 / 72 1 / 74 1 / 77 4 / 148 1 / -- 1 / -- 0 / -- 3 / -- 0 / -- 0 / -- 0 / -- 5 / 442
69 asj0702 1 / 89 1 / 94 1 / 105 2 / 154 3 / 210 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 652
70 bomul1128 1 / 109 1 / 111 2 / 137 1 / 121 4 / 198 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 676
71 utilforever 1 / 129 1 / 132 1 / 137 3 / 183 1 / 168 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 749
72 0xchaser 1 / 156 1 / 156 1 / 162 1 / 165 1 / 175 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 5 / 814
73 djeleanor2 1 / 1 1 / 2 2 / 27 1 / 6 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 36
74 ngblock 1 / 1 1 / 3 1 / 6 2 / 28 3 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 38
75 mskim503813 1 / 4 1 / 10 1 / 15 1 / 22 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 51
76 seawon0808 2 / 21 1 / 3 1 / 4 2 / 27 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 55
77 halin 1 / 14 1 / 16 1 / 21 1 / 24 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 75
78 cko301 1 / 22 1 / 23 1 / 26 1 / 32 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 103
79 kanenoseisbig 1 / 2 1 / 8 1 / 11 4 / 94 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 115
80 mujigae 1 / 13 1 / 14 2 / 37 2 / 74 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 138
81 ultmhoon21 1 / 25 1 / 27 1 / 41 1 / 60 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 153
82 6uchu 1 / 25 2 / 52 1 / 36 1 / 43 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 156
83 13520 1 / 20 1 / 22 2 / 54 2 / 65 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / -- 0 / -- 4 / 161
84 mshong1 1 / 41 1 / 42 1 / 38 1 / 48 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 169
85 yjkim997 1 / 26 1 / 29 3 / 86 2 / 79 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 220
85 trashmouse0524 1 / 42 1 / 44 1 / 54 2 / 80 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 220
87 beanyoon 1 / 47 1 / 50 1 / 53 3 / 120 6 / -- 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 270
88 quixote3260 1 / 2 1 / 5 3 / 146 1 / 126 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 279
89 firework72 1 / 67 1 / 70 1 / 73 1 / 75 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 285
90 presso 1 / 43 1 / 54 3 / 112 1 / 79 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 288
91 nflight11 1 / 91 1 / 39 4 / 98 1 / 95 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 323
92 pasat2325 1 / 67 1 / 72 1 / 79 2 / 112 4 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 330
93 alswl299 1 / 34 2 / 61 4 / -- 1 / 96 3 / 158 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 349
94 min_99 1 / 14 5 / 137 2 / 103 3 / 163 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 417
95 gkseorms813 2 / 100 1 / 85 2 / 123 1 / 123 6 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 431
96 ssjjss 1 / 94 1 / 102 2 / 136 1 / 130 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 462
97 mathp 3 / 127 1 / 124 1 / 125 3 / 175 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 551
98 0_python_0 1 / 104 1 / 111 4 / 178 4 / 192 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 585
99 ehdghk88 1 / 139 2 / 163 1 / 148 1 / 155 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 605
100 patata22 1 / 159 1 / 161 1 / 165 1 / 168 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 4 / 653
101 midra03 1 / 2 1 / 6 0 / -- 1 / 11 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 19
102 hjkim9911 1 / 1 1 / 4 1 / 24 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 29
103 det_hippopus 2 / 23 1 / 11 1 / 14 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 48
104 hopedream 1 / 14 1 / 17 1 / 21 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 52
105 pwgm11jan 1 / 3 2 / 27 2 / 33 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 63
106 moner_ari 1 / 30 1 / 28 1 / 36 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 94
107 woohyun_jng 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 21 1 / 41 1 / 74 3 / 136
108 kkkk04 1 / 17 4 / 91 1 / 48 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 156
109 dohyonne 1 / 42 1 / 45 3 / 93 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 180
110 juwon2718 1 / 27 1 / 30 4 / 133 0 / -- 0 / -- 0 / -- 2 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 190
111 minjun1209 1 / 74 2 / 97 1 / 83 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 254
112 chunbae74 1 / 103 2 / 129 2 / 136 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 368
113 danielkim05216 4 / 83 5 / 138 4 / 167 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 388
114 park_jun 1 / 92 2 / 115 5 / 183 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 390
115 drollnlockbird 1 / 122 1 / 125 1 / 154 3 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 401
116 shs0911 1 / 136 1 / 141 2 / 177 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 454
117 infikei 1 / 122 1 / 168 1 / 170 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 460
118 wmwmw98213 1 / 168 1 / 171 2 / 198 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 537
119 golazcc83 1 / 171 1 / 172 3 / 216 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 3 / 559
120 ibasic 1 / 2 1 / 3 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 5
121 tellpch09 1 / 3 1 / 5 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 8
122 hbmin3789 1 / 6 1 / 10 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 16
123 12dsdsdso 1 / 9 1 / 12 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 21
124 ks2515 0 / -- 1 / 12 1 / 15 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 27
125 setsuna 1 / 16 1 / 17 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 33
126 books1234 1 / 9 2 / 38 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 47
127 pjshwa 0 / -- 0 / -- 1 / 17 0 / -- 0 / -- 1 / 36 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 53
128 js7777 1 / 27 1 / 31 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 58
129 jihh7507 1 / 28 2 / 64 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 92
130 nitori 2 / 56 1 / 40 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 96
131 kiw970923 1 / 46 0 / -- 1 / 51 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 97
131 chika 1 / 46 1 / 51 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 97
133 pixticgames 2 / 47 2 / 55 4 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 102
134 makon 1 / 53 1 / 54 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 107
135 hicience 1 / 53 1 / 55 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 108
136 cytosine 1 / 51 0 / -- 1 / 69 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 120
137 haruki291sa 2 / 77 1 / 61 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 138
138 phoenixwing0314 1 / 71 1 / 73 4 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 144
138 shjh0815 1 / 38 2 / 106 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 144
140 dna_b 1 / 67 1 / 93 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 160
141 ascroid 1 / 77 0 / -- 3 / 129 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 206
142 dinojaemin 2 / 132 1 / 115 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 247
143 plan_pt 1 / 126 1 / 128 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 254
144 jihwan_0319 1 / 138 1 / 139 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 277
144 6729skl 1 / 138 1 / 139 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / -- 2 / 277
146 hohoherb 1 / 139 1 / 141 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 280
147 usb9245 1 / 161 1 / 163 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 324
148 xosid0330 1 / 156 1 / 175 4 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 331
149 pjw319 1 / 168 1 / 172 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 340
150 foxpython 1 / 169 1 / 176 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 345
151 saywoo 4 / 184 2 / 196 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 380
152 ychangseok 3 / 215 1 / 175 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / 390
153 jy7960 1 / 6 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 6
154 silvercube 1 / 18 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 18
155 yuris 1 / 28 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 28
156 kangkh0906 1 / 55 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 55
157 ishs311218 0 / -- 0 / -- 1 / 56 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 56
158 redcube231 1 / 59 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 59
159 aeren 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / -- 1 / 61 1 / 61
160 harry369 1 / 77 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 77
161 xodnd 1 / 81 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 81
162 hjroh0315 1 / 83 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 83
163 sorohue 0 / -- 0 / -- 2 / 123 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 123
164 lois 1 / 125 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 125
165 bs0529 0 / -- 0 / -- 5 / 127 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 127
166 kimhs 1 / 132 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 132
167 bumsoo0515 0 / -- 1 / 138 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 138
168 starboard 1 / 142 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 142
169 tkd0711 1 / 159 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 159
170 wlghks223 0 / -- 1 / 160 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 160
171 teferi00 1 / 176 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 176
171 vocks 0 / -- 1 / 176 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 1 / 176
173 aerae 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 aru0504 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 cmgjol010 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 hyperbolic 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 likescape 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 ohwphil 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 pizzaroot 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 riroan 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 rlatjwls3333 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 yookwi 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 chaerim 0 / -- 0 / -- 1 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / 0
173 functional 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 0 / -- 2 / -- 0 / -- 0 / -- 0 / 0
"""
info = info.splitlines(keepends = True)
if info[0] == "\n": info.pop(0)
# 랜덤 시드
mod = 4294967296 # 2^32
seed_string = "KUPC2025"
random_seed = int.from_bytes(hashlib.sha256(seed_string.encode()).digest(), 'big') % mod
np.random.seed(random_seed)
participants = {}
for participant in info:
participant = participant.split('\t')
user = participant[1]
corrects = int(participant[-1].split(' / ')[0])
if user in participants:
participants[user] = max(participants[user], corrects + 3)
else: participants[user] = corrects + 3
# 추첨 명단 제외 리스트
except_list = ['aerae','likescape']
for except_user in except_list:
try:
participants.pop(except_user)
except:
pass
# 추첨 확률 설정
winner_percent = [0] * len(participants)
correct_problems_sum = sum(participants.values())
for i, corrects in enumerate(list(participants.values())):
winner_percent[i] = corrects / correct_problems_sum
print(f'랜덤 시드: {seed_string}')
print(f'{len(participants)}명 {list(participants.keys())}')
# print(f'맞은 문제 개수: {list(participants.values())}')
# print(f'확률: {winner_percent}')
# 당첨자
winner = np.random.choice(list(participants.keys()), winner_num, replace = False, p = winner_percent) \
if winner_num < len(participants) else list(participants.keys())
winner.sort()
print(f'당첨자: {winner}')# your code goes here