| Show all threads Hide all threads Show all messages Hide all messages |
| DP with rerooting | strangequark0 | 1371. Cargo Agency | 22 Jun 2026 00:38 | 2 |
Can be solved using two DFS calls and tree rerooting in O(N) while maintaining a DP array where DP[node] = sum for all paths from node to all the nodes in its subtree (considering 1 as the initial root). Tree rerooting can be used to calculate the sum for all nodes. It's easier to solve by counting in how many paths each edge participates which is v*(n-v) if 'v' is number of nodes in its subtree. So just BFS is enough to get topological order to calc these amounts. |
| Is my idea correct? | Looksery DotaClub | 1182. Team Them Up! | 21 Jun 2026 21:55 | 4 |
Hi all. I use dfs to find the number of connected components. If there are 2 components,then i output each of them as a single team.If there is only 1 CC,then i output numbers from 1 to n/2 and from n/2+1 to n. Otherwise "No solution". It seems to me correct,but.... Or tell me some tests that prove my idea's fail) Your idea is incorrect. 1) If 1st person knows 2nd person it doesn't mean that 2nd person knows 1st person. 2) If 1st and 2nd persons know each other and 1st and 3rd persons also know each other it doesn't mean that 2nd person knows 3rd person and vice versa. According to your algo in the first case both persons will be in one connected component, and in the second case all 3 persons will be in one connected component. Hi, I think that you should find the strongest connected components in a digraph. No, it's about finding two cliques |
| WA 11 | IvanShafran | 1158. Censored! | 21 Jun 2026 21:52 | 2 |
WA 11 IvanShafran 14 Oct 2014 20:30 If you use Aho-Korasik+DP you should delete forbidden words which contain other forbidden words. Example: alphabet = "01" forbidden words = ["100", "10", "11"] -> forbidden words = ["10", "11"] Aho-Corasick has "dictionary" edges for this purpose, so if bad[suffix[i]]==true, then bad[i]=true. Ignoring words that contain other words also works, but it's not true O(N) :) and there is pitfall of some word like "AB" being listed twice and cancelling itself out, so if you go checking for substrings, make sure that the other word is strictly shorter. |
| I have some test datas | zzyzzy12 | 1158. Censored! | 21 Jun 2026 21:21 | 3 |
50 50 10 qwertyuiop[]\asdfghjkl;'zxcvbnm,./ QWERTYUIOP{}|AS aegaegu etoijqt tquqi witowwt zxcjnc oeit potieq iojge nvoq piqper ans=8881647922834867244791415981705771412427494861672253136057167374729235842468240763290 1 1 1 a a ans=0 5 10 3 abcde abc bc c ans=1048576 Edited by author 05.04.2012 20:51 - Edited by author 07.01.2024 21:19 All is well except space in alphabet, replace with * |
| Для тех, у кого нет идей к решению | Alexey Shestakov | 1044. Lucky Tickets. Easy! | 20 Jun 2026 15:53 | 1 |
1) Стоит рассмотреть, какие суммы мы можем набрать с помощью n \ 2 цифр билета (от 0 до 36, в случае с n равным 8) 2) Когда мы нашли количество сумм размера n, находим ответ, складывая их квадраты Почему квадраты? Пусть у нас n сумм размером k. Это значит, что мы можем сопоставить в пару к первой сумме вторую, третью, ..., n - 1 и n. Со второй и последующими - аналогично |
| Imagine yourself a statement | Igor Parfenov | 2017. Best of a bad lot | 20 Jun 2026 00:28 | 1 |
1. The given graph of "two people contradict" is bipartite (good don't contradict each other and bad don't contradict each other). 2. If two people saw third person in different places, these two people contradict. Edited by author 20.06.2026 01:29 |
| No statement | Igor Parfenov | 2021. Scarily interesting! | 19 Jun 2026 22:58 | 1 |
So, what is the statement? What am I asked to find? I guess, to minimize the suffix, such that difference of score at the beginning of it is greater (or equal?), than six times length of the suffix. |
| "Hint" | Solver | 2225. Nails in the House | 19 Jun 2026 21:23 | 1 |
"Hint" Solver 19 Jun 2026 21:23 There is O(N*log(N)) solution with O(N) memory, and only due to sorting |
| HINT | __Andrewy__ | 2167. Cipher Message 5 | 19 Jun 2026 17:53 | 2 |
HINT __Andrewy__ 31 Dec 2023 11:49 There is O(sieve) + O(2*2^20) preparation (CPU/RAM) + N*O(20) per query algo for arbitrary numbers, not just primes. Use a heap-alike array where left edge corresponds to setting bit 0 (from highest to lowest) and right corresponds to settings bit 1. Internal nodes tell if you will eventually find prime (or anything else) on that way. Edited by author 19.06.2026 17:53 |
| Need to add another test — currently it's possible to get Accepted with a partial solution | bdm | 1930. Ivan's Car | 19 Jun 2026 15:12 | 1 |
For example: text 5 5 1 2 2 4 3 4 1 3 3 5 2 5 Optimal route: Start with the 'down' gear. 2→1: go downhill (0 shifts, gear stays 'down'). 1→3: go uphill → 1 shift (gear becomes 'up'), score = 1. 3→5: go uphill (0 shifts). Total: 1 shift. My algorithm outputs 2 because it doesn't account for the current gear when storing distances. Nevertheless, I got Accepted. |
| hints (Nostradamus advised this) | Dmi3Molodov | 1102. Strange Dialog | 19 Jun 2026 13:48 | 1 |
1) Start with the FOUR final states. 2) Use only 15 states. 3) If it doesn't work out, then read the hint further. unsigned char constexpr stopStates = 4; auto constexpr go = []() {//state machine (2D array) std::array<std::array<decltype(+stopStates),256>,15> g; for(auto&e : g) //default std::fill(e.begin(), e.end(), g.size());//wrong state for(size_t i = 0; i!=stopStates; ++i) //default g[i]['i'] = stopStates, g[i]['o'] = stopStates+1; //===== stop states ===== g[0]['p'] = 8; //puton //in \ out g[1]['p'] = 12; //put //input \ output g[2]['o'] = 14; //on g[2]['p'] = 8; //puton //put_on g[3]['p'] = 8; //puton g[3]['e'] = 0; //e //===== non stop states ===== g[4]['n'] = 1; // i -> in g[5]['n'] = 6; // o -> on g[5]['u'] = 7; // o -> ou g[6]['e'] = 0; // on -> one g[7]['t'] = 1; // ou -> out g[8]['u'] = 9; // p -> pu g[9]['t'] = 10; // pu -> put g[10]['o'] = 11; // put -> puto g[11]['n'] = 0; // puto -> puton g[12]['u'] = 13; // ?p -> ?pu g[13]['t'] = 2; // ?pu -> ?put g[14]['n'] = 3; // ?puto -> ?puton g[14]['u'] = 7; // ?puto -> ?putou return g; //todo: Timus - automatic construction of a MINIMAL state machine (NP ?) }(); |
| Colleniars? | coder | 2221. Convex Hull Treap | 17 Jun 2026 22:26 | 2 |
For this test what should be answer? 3 0 0 1 1 2 2 --- 1 2 3 or 1 2 2 ? (Answer written by GPT-5.5, verified with AC solution) The size of a convex hull is not the number of points in the set. According to the statement, if the convex hull is a segment, its size is 2. For the whole set, the delegate is (2, 2), because it has the greatest ordinate. The convex hull of all three collinear points is just the segment from (0, 0) to (2, 2), so its size is 2. Then Vadim takes the points to the left of the delegate: (0, 0) and (1, 1). Their delegate is (1, 1), and their convex hull is also a segment, so its size is 2. Finally, (0, 0) is alone, so its convex hull size is 1. So in input order the answer is 1 2 2. |
| O(n^2) why TL is so large for this problem? (-) | Vedernikoff 'Goryinyich' Sergey (HSE: АОП) | 2122. Hamming | 17 Jun 2026 05:04 | 1 |
|
| WA #5 | coders1122 | 1577. E-mail | 17 Jun 2026 02:52 | 6 |
WA #5 coders1122 28 Oct 2010 20:09 see the second sample on your site. the answer is 2. Any suggestions on improvement of the algorithm i use? Is my approach wrong or can be fine with some tweaking? Ravi Kiran. If in your current state s1[i]==s2[j], you should not assume states i+1,j and i,j+1. Only i+1,j+1. Thanks a lot everyone. I got accepted with the change you suggested. Had similar problem :) This test shows the difference aba a Edited by author 17.06.2026 08:18 |
| How to do this problem using segment trees? | Pushkar Mishra | 1019. Line Painting | 16 Jun 2026 11:53 | 3 |
I understand that we are only concerned with the points mentioned, and not all the points between 1 and 10^9. After forming a segment tree and making all the updates, how can we find the longest white colored segment? Thank you. It can be solved with heap by sequentially walking on control points to add/remove active segments and tracking the latest one as of input order As for segment tree, I'd track these values iv: longest white streak on the interval lv: longest white streak at the begging of the interval rv: longest white streak at the end of the interval sv: length of segment initially iv=lv=rv=s now iv = max(iv1, iv2, rv1+lv2) lv = lv1==s1 ? s1+lv2 : lv1 rv = rv2==s2 ? rv1+s2 : rv2 But it will require lazy propagation similar to 1890 problem during painting which is quite cumbersome. The good side - it would allow "online" algorithm to give answer at every step as paiting proceeds (could be a good upgrade of a problem :) As for this one - a simpler lazy propagation with states "0" nothing "w" completely white, "b" completely black. Upon final convergion you repeatedly forward them from parent to children while you walk downwards, and after paiting all parental colorings are reverted to "0" Edited by author 16.06.2026 12:05 |
| The problem is easily solvable without segment tree. | Jorres | 1019. Line Painting | 16 Jun 2026 11:49 | 3 |
Also pay attention to the fact that according to the example - segment is (a;b]. I used this approach and got accepted. (O (N*N) btw :) ) Yes. Compressing coordinates and painting segments straightforwardly is enough. It's also easily solvable with heap at O(N*log(N)) |
| Some tests | 👨🏻💻 Spatarel Dan Constantin | 1840. Victim of Advertising | 16 Jun 2026 10:30 | 1 |
Some tests 👨🏻💻 Spatarel Dan Constantin 16 Jun 2026 10:30 WA #5: 2 -2000 0 -1000 0 0 -1000 0 -2000 > 367.0796326795 WA #7: 2 935 973 -16 438 867 30 196 463 > 1040.9330224527 WA #13: 2 0 7 0 8 6 10 6 1 > 12.7006778631 |
| WA 7 | Yegor | 1890. Money out of Thin Air | 16 Jun 2026 10:26 | 3 |
WA 7 Yegor 19 Dec 2011 03:58 What can cause a "wrong answer" in 7-th test? I used sqrt_decompostion and always get WA7. what is tricky test 7? I found my bug, I renum all vertexes, but used old indexes :) (renum all child of vertex to as id....id+k, sequencial indexes). Edited by author 15.02.2012 18:35 Since description says p[i]<i it was tempting to assume that initial sequence is already in DFS order, but it's not necessarily so. Got RE7 when explicitly checked for this. |
| To Admins: Wrong tests #8 | Dmi3Molodov | 1102. Strange Dialog | 14 Jun 2026 04:41 | 1 |
The total length of all strings (including the first one with the number N) exceeds the specified size of 4000000 bytes. |
| PLEASE ADD SUPPORT FOR OCAML. | Dmohan | | 13 Jun 2026 19:32 | 1 |
Hi, Kindly add support for ocaml to execute timus problems. Thanks. |