Codeforces Round 990 (Div. 1)

Solutions are presented as using the least memory and the fastest execution time. It also takes the top 10 most recent solutions from each language. If you want to limit to a specific index, click the "Solved" button and go to that problem.

ContestId
Name
Phase
Frozen
Duration (Seconds)
Relative Time
Start Time
2046 Codeforces Round 990 (Div. 1) FINISHED False 7200 43284884 Dec. 3, 2024, 6:25 a.m.

Problems

Solved
Index
Name
Type
Tags
Community Tag
Rating
( 95 ) F2 Yandex Cuneiform (Hard Version) PROGRAMMING constructive algorithms data structures greedy

This is the hard version of the problem. The difference between the versions is that in this version, there is no restriction on the number of question marks. You can hack only if you solved all versions of this problem. For a long time, no one could decipher Sumerian cuneiform. However, it has finally succumbed to pressure! Today, you have the chance to decipher Yandex cuneiform. Yandex cuneiform is defined by the following rules: An empty string is a Yandex cuneiform. If you insert exactly one copy of each of the three letters ' Y ', ' D ', and ' X ' into a Yandex cuneiform in such a way that no two adjacent letters become equal after the operation, you obtain a Yandex cuneiform. If a string can't be obtained using the above rules, it is not a Yandex cuneiform. You are given a template. A template is a string consisting of the characters ' Y ', ' D ', ' X ', and ' ? '. You need to check whether there exists a way to replace each question mark with ' Y ', ' D ', or ' X ' to obtain a Yandex cuneiform, and if it exists, output any of the matching options, as well as a sequence of insertion operations to obtain the resulting cuneiform. In this version of the problem, the number of question marks in the template can be arbitrary. Each test contains multiple test cases. The first line contains the number of test cases (t) ((1 \le t \le 5 \cdot 10^4)). The description of the test cases follows. Each test case consists of a single line containing a template of length (n) ((3 \leq n < 2 \cdot 10^5), (n \bmod 3 = 0)), consisting only of characters ' Y ', ' D ', ' X ', and ' ? '. It is guaranteed that the sum of (n) over all test cases does not exceed (2 \cdot 10^5). For each test case, output a single line containing ' NO ' if it is not possible to obtain a cuneiform from the given template. Otherwise, output ' YES ' on the first line, and on the second line, any obtainable cuneiform. After that, you need to output the sequence of opera

Tutorials

Разбор Codeforces Round 990 (Div. 2 + Div. 1)

Submissions

Submission Id
Author(s)
Index
Submitted
Verdict
Language
Test Set
Tests Passed
Time taken (ms)
Memory Consumed (bytes)
Tags
Rating
294720930 hitonanode F2 Dec. 4, 2024, 6:02 a.m. OK C++20 (GCC 13-64) TESTS 175 171 4300800
294606357 antontrygubO_o F2 Dec. 3, 2024, 11:39 a.m. OK C++20 (GCC 13-64) TESTS 175 312 15769600
294714397 maspy F2 Dec. 4, 2024, 4:38 a.m. OK C++20 (GCC 13-64) TESTS 175 405 61440000
294635965 Benq F2 Dec. 3, 2024, 2:22 p.m. OK C++23 (GCC 14-64, msys2) TESTS 175 577 34816000

remove filters

Back to search problems