Участник:Taranov srg/Digo — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) |
|||
Строка 5: | Строка 5: | ||
Увидел что можно доделать задачу со страницы https://discopal.ispras.ru/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Easik/INS14C | Увидел что можно доделать задачу со страницы https://discopal.ispras.ru/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Easik/INS14C | ||
изменил ввод данных и, оптимизировал алгоритм, проходит все тесты | изменил ввод данных и, оптимизировал алгоритм, проходит все тесты | ||
+ | |||
+ | [[Участник:StasFomin|StasFomin]] 14:24, 28 декабря 2020 (MSK): Ага, поздравляю, на тему «жадных» лучше больше не решать — «+40 баллов» | ||
+ | [[File:Digo_2020-12-28_14-23-38_image0.png||400px]] | ||
<code-Python> | <code-Python> |
Версия 14:24, 28 декабря 2020
https://www.spoj.com/problems/INS14C/
Python3
Увидел что можно доделать задачу со страницы https://discopal.ispras.ru/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Easik/INS14C изменил ввод данных и, оптимизировал алгоритм, проходит все тесты
StasFomin 14:24, 28 декабря 2020 (MSK): Ага, поздравляю, на тему «жадных» лучше больше не решать — «+40 баллов»
t = int(input()) for _ in range(t): n, k = [int(i) for i in str(input()).split(' ')] s = (n - k) // 2 + (n-k) % 2 d = (n - k) // 2 in_s = str(input()) ss = '' for n,i in enumerate(in_s): if s: if i == '1': s -= 1 else: if d: d -= 1 else: ss += '0' else: if d: if i == '0': d -= 1 else: ss += '1' else: ss += in_s[n:] break print(ss[(d+s):])