Loading [MathJax]/jax/output/SVG/jax.js

3-й этап Республиканской олимпиады по информатике 2021-2022, 2 тура


Есеп C. Cөзді табу

Ограничение по времени:
3 seconds
Ограничение по памяти:
256 megabytes

Сізге ұзындығы n болатын, кіші латын әріптері және `?' таңбаларынан тұратын s сөзі беріледі. Сондай-ақ, сізде m шарт бар. Әр шарт l1, l2 және x үш бүтін сандарымен сипатталады. Бұл шарт (sl1sl1+x1) ішкі жолы (sl2sl2+x1) ішкі жолына тең болу керек екенін білдіреді. Бүкіл m шарт орындалатындай, әрбір `?' таңбасын кіші латын әріпіне ауыстыру керек. Барлық шарттарды қанағаттандыратын сөздердің ішінен лексикографиялық минималды сөзді табыңыз. a сөзі b сөзінен лексикографиялық кіші, егер
Формат входного файла
Бірінші жолда n(1<=n<=300000) бүтін саны берілген. Екінші жолда ұзындығы n болатын s сөзі берілген. Үшінші жолда m(1<=m<=300000) бүтін саны берілген. Келесі m жолда l1, l2 және x (1<=l1,l2<=nx+1) үш бүтін сандары берілген. Бұл үштік (sl1sl1+x1) ішкі жолы (sl2sl2+x1) ішкі жолына тең болу керек екенін білдіреді.
Формат выходного файла
Барлық шарттарды қанағаттандыратын лексикографиялық минималды сөзді шығарыңыз. Егер мұндай сөз болмаса, 1 шығырыңыз.
Примеры:
Вход
10
a?b?b???b?
3
1 4 3
7 9 2
3 10 1
Ответ
abbabbbbbb
Вход
6
a????b
5
1 2 1
2 3 1
3 4 1
4 5 1
5 6 1
Ответ
-1
( Narkhan Kamzabek )
посмотреть в олимпиаде

Комментарий/решение:

  0
2 года 2 месяца назад #

Разве после соблюдения всех условий нельзя все оставшиеся вопросительные знаки заменить на маленькую "a"?

  0
2 года 2 месяца назад #

кодты корсету/жасыру

C++

Задача интересная