Task: | Leimasin |
Sender: | Metabolix |
Submission time: | 2025-09-26 19:58:28 +0300 |
Language: | Python3 (CPython3) |
Status: | READY |
Result: | 76 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 33 |
#2 | ACCEPTED | 43 |
#3 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#2 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#3 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#4 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#5 | ACCEPTED | 0.04 s | 2, 3 | details |
#6 | ACCEPTED | 0.04 s | 2, 3 | details |
#7 | ACCEPTED | 0.06 s | 2, 3 | details |
#8 | ACCEPTED | 0.05 s | 2, 3 | details |
#9 | TIME LIMIT EXCEEDED | -- | 3 | details |
#10 | TIME LIMIT EXCEEDED | -- | 3 | details |
#11 | TIME LIMIT EXCEEDED | -- | 3 | details |
#12 | TIME LIMIT EXCEEDED | -- | 3 | details |
#13 | TIME LIMIT EXCEEDED | -- | 3 | details |
#14 | TIME LIMIT EXCEEDED | -- | 3 | details |
Code
import heapq # Lukee rivin syötettä ja palauttaa sen sisältämät luvut listana. def read_numbers(): return list(map(int, input().strip().split())) def read_string(): return input().strip() def main(): # lue luvut n m k nmk = read_numbers() tuloksen_koko = nmk[0] leiman_koko = nmk[1] leimasin = read_string() leimaukset = read_numbers() # Priority queue: (kohta, prioriteetti) leimaukset_tulossa = [] for prioriteetti, kohta in enumerate(leimaukset): heapq.heappush(leimaukset_tulossa, (kohta, prioriteetti)) leimaukset_voimassa = [] taulu = ['.'] * tuloksen_koko for tulos_i in range(1, tuloksen_koko + 1): # Siirrä leimaukset, jotka alkavat nyt, voimassaoleviin while leimaukset_tulossa and leimaukset_tulossa[0][0] == tulos_i: kohta, prioriteetti = heapq.heappop(leimaukset_tulossa) heapq.heappush(leimaukset_voimassa, (-prioriteetti, kohta)) # Poista vanhentuneet leimaukset while leimaukset_voimassa and leimaukset_voimassa[0][1] + leiman_koko <= tulos_i: heapq.heappop(leimaukset_voimassa) # Jos voimassaoleva leimaus, käytä sitä if leimaukset_voimassa: taulu[tulos_i - 1] = leimasin[tulos_i - leimaukset_voimassa[0][1]] tulos = ''.join(taulu) print(tulos) if __name__ == "__main__": main()
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1000 1 100 a 585 600 750 170 794 845 341 39... |
correct output |
---|
............a....aa.............. |
user output |
---|
............a....aa.............. |
Test 2
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1000 4 100 zhrb 795 569 744 662 315 869 913 21... |
correct output |
---|
.........................zhrb.... |
user output |
---|
.........................zhrb.... |
Test 3
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1000 100 100 wkmtgzytnfwptwukbartgunjyrkyml... |
correct output |
---|
wkmtgzywkmtgzytnfwptwukbartgun... |
user output |
---|
wkmtgzywkmtgzytnfwptwukbartgun... |
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1000 1000 100 njplbyvkaytbcyzbylzntnmpfapvfg... |
correct output |
---|
njplbyvkaytbcyzbylzntnmpfapvfg... |
user output |
---|
njplbyvkaytbcyzbylzntnmpfapvfg... |
Test 5
Group: 2, 3
Verdict: ACCEPTED
input |
---|
100000 1 1000 a 61541 4948 46214 29629 8779 76... |
correct output |
---|
................................. |
user output |
---|
................................. |
Test 6
Group: 2, 3
Verdict: ACCEPTED
input |
---|
100000 10 1000 ntsconpqnv 17118 69319 2115 8873 892 9994... |
correct output |
---|
.....................ntsconpqn... |
user output |
---|
.....................ntsconpqn... |
Test 7
Group: 2, 3
Verdict: ACCEPTED
input |
---|
100000 10000 1000 wcyeepjmmvavmoncfxclqrsebjzwbf... |
correct output |
---|
................................. |
user output |
---|
................................. |
Test 8
Group: 2, 3
Verdict: ACCEPTED
input |
---|
100000 100000 1000 chdcxwwznawllrxcxlckeziomcsjhc... |
correct output |
---|
chdcxwwznawllrxcxlckeziomcsjhc... |
user output |
---|
chdcxwwznawllrxcxlckeziomcsjhc... |
Test 9
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 1 500000 a 406018 635983 429225 943593 90... |
correct output |
---|
.a...aa.....a.aaaa.a.aaa..aa.a... |
user output |
---|
(empty) |
Test 10
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 10 500000 frvhrhlrxi 85148 459715 677814 98302 4081... |
correct output |
---|
frvhfrvhrhlrxihrhlrxifrvhrfrvf... |
user output |
---|
(empty) |
Test 11
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 1000 500000 hklmkntjqgilackgurwlerwvvfjwwr... |
correct output |
---|
.hklhklmkntjqgilackgurwlerwvvf... |
user output |
---|
(empty) |
Test 12
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 10000 500000 yxajftmelgwiofcugtrvcltdemhyuu... |
correct output |
---|
yxajftyxayxajftmelgwiofcugtrvc... |
user output |
---|
(empty) |
Test 13
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 100000 500000 yyzteckvutdnprlklyxgenyqpznght... |
correct output |
---|
.yyyyzteckvutdnpryyzteckvutdnp... |
user output |
---|
(empty) |
Test 14
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
1000000 1000000 500000 hhgvveiosloznsihxtccfjbizayyhl... |
correct output |
---|
hhgvveiosloznsihxtccfjbizayyhl... |
user output |
---|
(empty) |