Combinatorics olympiad problem (Yandex Data Science School) I've found quite an interesting problem involving combinatorics and some set theory. It was in Yandex Data Science School admission exam.  Please check if my solution is correct.
Given arbitrary 100 subsets of set $A=\{0,1,...,9\}$. Prove, that $\exists$ $B$, $C$ $\subseteq$ $A$$:$ $|B\Delta C\vert\le2$.
There are $2^{10}$ different subsets of set $A$. We'll code each of them as a binary 10-digit number as follows. On the 0th place we put $1$ if $0$ occurs  in the subset (or $0$ if it doesn't). On the 1st place we put $1$ if $1$ occurs in the subset (or $0$ if it doesn't)ans so forth. For instance, subset $\{1,3,8\}$ will correspond to number $0100001010$. Hence, we made a  one-to-one correspondence between subsets of $A$ and first 1024 binary numbers.
The next step is to compare representation of subsets and here is how we'll do that. Firstly, write one of the corresponding numbers behind the other one. Next, behind each bit of the bottom number we'll write $0$ if values of the corresponding bits in 2 subsets representations are equal (or $1$ if they aren't). For example, let's compare $0101101110$ and $0101000100$
$$
        \begin{matrix}
        0 & 1& 0 & 1 & 1 & 0 & 1 & 1 & 1 & 0 \\
        0 & 1& 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 \\
        0 & 0& 0 & 0 & 1 & 0 & 1 & 0 & 1 & 0\\
        \end{matrix}
$$
When we do subsets pairwise comparison, we'll create a set $D$ which contains all the results (numbers from the third row). These are all possible combinations of $B\Delta C$. Let $\Bbb D$ be the subset of $D$ elements of which contain at least three $1$ (meaning, that $\Bbb D$ contains all possible representations of $B\Delta C$ such that $|B\Delta C\vert\ge3$). Let's  estimate $|\Bbb D\vert$.
To calculate all possible combinations from $\Bbb D$ we need formula for permutation of multisest $$P(n_1,\ldots,n_k) = \frac{(n_1
+ \ldots + n_k)!}{n_1! \ldots n_k!}$$
where $n_1, \ldots, n_k$ represent numbers of elements of the same type.
For example, the number of distinct anagrams of the word MISSISSIPPI is $\frac{11!}{1!4!4!2!}$ (1 M, 4 Is, 4 Ss, 2 Ps, 11 letters total).
In $\Bbb D$ we have only binary numbers with three or more $1$, hence $$|\Bbb D\vert \leq P(3,7) + P(4,6) + P(5,5) + P(6,4) + P(7,3) + P(8,2) + P(9,1) + P(10, 0)$$
where $P(a,b)$ is a number of different permutations of $a$ $1s$ and $b$ $0s$.
I won't type in the details of calculations now, but, as you can see for yourself, $$|\Bbb D\vert \leq 1976$$
I know, it's been a bit tricky so far, but here is the last step. 
Let's define $x$ as a cerdinality of $X = \{B\Delta C \subseteq A:$ $|B\Delta C\vert\ge3\}$.
Since $\Bbb D$ contains all 2-combinations of $X$, $$|\Bbb D\vert = \binom{2}{x} \le 1976$$
$$\binom{2}{x} = \frac{x!}{2!(x-2)!} \le 1976$$
$$x(x-1) \le 1976*2$$
$$x^2 - x - 3952 \le 0$$
$$0 \le x \le 64$$
Which means, that there are only 64 different subsets of $A$ for which $|B\Delta C\vert\ge3$ holds. Thus, there exist $B$, $C$ $\subseteq$ $A$$:$ $|B\Delta C\vert\le2$.
 A: In fact $\sum_{k=3}^{10}P(k,10-k)=968$, not $1976$; this is simply the number of subsets of $A$ with at least $3$ elements, so it’s
$$2^{10}-\left(\binom{10}0+\binom{10}1+\binom{10}2\right)=1024-(1+10+45)=968\;.$$
That’s merely a computational error; unfortunately, what follows it embodies an error in logic.
The $100$ chosen subsets of $A$ produce altogether $\binom{100}2=4950$ symmetric differences, which is indeed larger than $968$, but this does not by itself show that two of the sets must have a symmetric difference with at most $2$ elements; many different pairs of the chosen subsets can have the same symmetric difference. You need a calculation that also takes into account the number of different pairs of sets that can have the same symmetric difference; I’ll give an argument that does that. 
Fix a subset $S$ of $A$. Let
$$\mathscr{N}(S)=\{S\mathrel{\triangle}T:T\subseteq A\text{ and }|T|\le1\}\;;$$
clearly $|\mathscr{N}(S)|=\binom{10}0+\binom{10}1=11$, and $\mathscr{N}$ is the family of subsets of $A$ that differ from $S$ by at most $1$ element, including $S$ itself. For all $S,T\subseteq A$ we have $|S\mathrel{\triangle}T|\ge 3$ if and only if $\mathscr{N}(S)\cap\mathscr{N}(T)=\varnothing$. 
Let $\mathscr{S}$ be a family of $100$ subsets of $A$, and suppose that $|S\mathrel{\triangle}T|\ge 3$ whenever $S,T\in\mathscr{S}$ and $S\ne T$. Then $\left\{\mathscr{N}(S):S\in\mathscr{S}\right\}$ is a pairwise disjoint family of subsets of $\wp(A)$. Since it is pairwise disjoint,
$$1024=2^{10}=|\wp(A)|\ge\left|\bigcup_{S\in\mathscr{S}}\mathscr{N}(S)\right|=\sum_{S\in\mathscr{S}}|\mathscr{N}(S)|=100\cdot 11=1100\;,$$
which is absurd. Thus, there must be distinct $S,T\in\mathscr{S}$ such that $|S\mathrel{\triangle}T|\le 2$.
