ASC 36 Editorial

Revision en3, by ezraft, 2026-01-13 21:28:13

Contest link: https://mirror.codeforces.com/gym/100430    

100430A - Chip Installation

100430B - Divisible Substrings

100430C - Preparing Documents

100430D - GridBagLayout

100430E - Hot Potato Routing

100430F - Knapsack Problem

For a subset

$$$A \subset \{1, \ldots, n\}$$$

we introduce the notation

Unable to parse markup [type=CF_MATHJAX]

$ for convenience. First, note that

$$$\mathcal{I}$$$

always contains

$$$\varnothing,$$$

since

$$$s(\varnothing) = 0$$$

. As a result we cannot violate condition

$$$1.$$$

Similarly, it is impossible to violate condition

$$$2,$$$

since for

$$$A \supset B$$$

we have

Unable to parse markup [type=CF_MATHJAX]

$ and

$$$s(A \setminus B) \geq 0$$$

by non-negativity of the weights

$$$w_i.$$$

We say a set

$$$A$$$

is constrained if

$$$s(A) \leq c$$$

and for all

$$$x \not \in A,$$$
$$$s(A \cup \{x}) \geq c.$$$

Clearly if we can find constrained sets

$$$A, B$$$

with

$$$|A| \neq |B|$$$

then we have a contradiction to the third condition.

Consider the sets

$$$M_{\min}$$$

and

$$$M_{\max}$$$

constructed as follows:

For

$$$M_{\min},$$$

iterate through the indices

$$$\{1,\ldots, n\}$$$

in non-decreasing order of

$$$w_i.$$$

At each index, if adding it to the set keeps

$$$s(M_{\min})$$$

at most

$$$c,$$$

then add it to

$$$M_{\min}.$$$

For

$$$M_{\max},$$$

perform the same algorithm with the indices initially in non-increasing order of weights.

It is well known that

$$$M_{\min}$$$

is the constrained set with the maximum size and

$$$M_{\max}$$$

is the constrained set of minimum size. I leave it as an exercise to prove this.

If

$$$M_{\min} \gt M_{\max}$$$

then we are done. Otherwise, we know that all constrained sets have the same size; call this

$$$k.$$$

100430G - Magic Potions

100430H - Restoring Permutation

100430I - Roads

100430J - Squary Set

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en36 English diss_quack 2026-01-29 02:09:27 0 (published)
en35 English 0mar 2026-01-29 01:37:05 6 type for J
en34 English diss_quack 2026-01-29 01:30:47 6
en33 English diss_quack 2026-01-29 01:26:25 41
en32 English 0mar 2026-01-28 23:16:26 36
en31 English 0mar 2026-01-28 23:12:51 964
en30 English diss_quack 2026-01-28 20:26:06 885
en29 English ezraft 2026-01-28 19:50:26 146
en28 English ezraft 2026-01-28 19:22:57 747
en27 English ezraft 2026-01-28 19:05:23 25
en26 English ezraft 2026-01-28 19:04:37 5
en25 English ezraft 2026-01-28 19:04:00 3351
en24 English ezraft 2026-01-28 18:55:02 90
en23 English diss_quack 2026-01-14 22:11:54 772
en22 English diss_quack 2026-01-14 20:55:29 29
en21 English diss_quack 2026-01-14 20:54:21 275
en20 English diss_quack 2026-01-14 20:51:21 225
en19 English diss_quack 2026-01-14 20:46:23 1179
en18 English 0mar 2026-01-14 08:31:30 6
en17 English 0mar 2026-01-14 08:30:46 13
en16 English 0mar 2026-01-14 08:29:49 1584 add H editorial
en15 English diss_quack 2026-01-14 00:00:09 3020
en14 English diss_quack 2026-01-13 23:08:11 16
en13 English diss_quack 2026-01-13 23:04:07 3121
en12 English ezraft 2026-01-13 22:43:35 22
en11 English ezraft 2026-01-13 22:36:51 97 Tiny change: 'A \subset \{1, \ldots, n\}$ we intr' -> 'A \subset {1, \ldots, n}$ we intr'
en10 English ezraft 2026-01-13 22:26:58 1267
en9 English ezraft 2026-01-13 21:41:35 248
en8 English ezraft 2026-01-13 21:39:13 6 Tiny change: 'add $x = \argmin_{u \in \{' -> 'add $x = \text{argmin}_{u \in \{'
en7 English ezraft 2026-01-13 21:38:19 667
en6 English ezraft 2026-01-13 21:30:26 4 Tiny change: 'et $A$ is `constrained` if $s(A) ' -> 'et $A$ is _constrained_ if $s(A) '
en5 English ezraft 2026-01-13 21:30:00 8
en4 English ezraft 2026-01-13 21:28:53 64
en3 English ezraft 2026-01-13 21:28:13 1414
en2 English ezraft 2026-01-13 21:13:02 44
en1 English ezraft 2026-01-13 21:12:14 416 Initial revision (saved to drafts)