I chose to revive this old problem of mine, due to the interesting links between other topics on these fora.
Theorem 1. Let
be a set. Let
and
be two nonnegative integers such that
. Let
be
subsets of
such that
for every
. Then, there exists a subset
of
such that
and
for every
.
This is the statement of Theorem 1 in
darij grinberg's
http://www.cip.ifi.lmu.de/~grinberg/subsetcond.pdf as an answer to a generalization hinted at by
tanlsth at
http://www.mathlinks.ro/viewtopic.php?t=118091
The problem is mine, in all generality, as witnessed by the apparition in the Resources section at
http://www.mathlinks.ro/resources.php?c=142&cid=25&year=2004 with a solution by induction by
grobber at
http://www.mathlinks.ro/viewtopic.php?p=440858#440858
(That year

, the Romanian Mathematical Olympiad for grade IX was sat, among others, by
Adi Zahariuc,
Iurie Boreico and
Sasha Zamorzayev. As far as I remember, no-one gave a full solution during the contest, although nowadays
Iurie swears he did solve it!
Andrei Negut was orally given the problem, and he came with an induction proof that was somehow needing ...).
As the original problem stated, and
Darij noticed, if

the result stands no more, since one can take the first

blocks

covering

, and an arbitrary

; then by pigeonhole principle, any subset

of

with

elements will forcibly have at least

of its elements in one of the first

blocks.
Let me now present to you my
original solution to the hard part, somehow more insightful (I think) than an inductive solution, which relies on building the subset

in a way (inductively) that escapes the full grasp of understanding its structure.
A simple observation is that one may assume

for every

, since this is only to one's disadvantage (one may arbitrarily enlarge the blocks to full

cardinality and prove the existence of a set

; then its intersections with the original blocks can only be of equal or lesser cardinality).
Another simple observation is that, for any fixed

, one has

, hence there must exist some suitable

. Now, the set

clearly intersects the blocks in at most one element each, but of course there is no guarantee that

, since some of the elements

may coincide!
We will remedy to this with a neat trick. Start with

and find a suitable

. If

proceed with the next value for

; if not, replace (like for a soccer team) an arbitrary element

with

, i.e. have

(in order to keep notations simple, we will call this new block by the same name

), and then proceed with the next value for

. This will ensure that any newly selected

does not match any of the ones selected before, hence

and, moreover,

for every

, with the blocks as they are at the end of the process. Now replace back the elements

with

(where the case), getting the initial blocks. The intersection of

with any block

may only keep (if

) or decrease (if

) its cardinality, whence the suitability of this set

.