Maths Olympiad Prep

Library / IMO /4 of 6

IMO, 2009

Combinatorics Difficulty 8.8 Shortlist Prove it United States

Let a1,a2,…,ana_1, a_2, \dots, a_n be distinct positive integers and let MM be a set of n−1n-1 positive integers not containing s=a1+a2+⋯+ans = a_1 + a_2 + \dots + a_n. A grasshopper is to jump along the real axis, starting at the point 00 and making nn jumps to the right with lengths a1,a2,…,ana_1, a_2, \dots, a_n in some order. Prove that the order can be chosen in such a way that the grasshopper never lands on any point in MM.

(The original version of this problem was suggested by Dmitry Khramtsov from Russian Federation.
The current version was strengthened by Christian Reiher from Germany.)

Solution

(By Anton Mellit, observer from the Ukraine delegation, and Ilya Bogdanov, observer from the Russia delegation).

We will represent a route of the grasshopper by a (ordered) sequence of indices (i1,i2,…,in)(i_1, i_2, \dots, i_n) if it makes consecutive jumps (ai1,ai2,…,ain)(a_{i_1}, a_{i_2}, \dots, a_{i_n}).

To simplify our argument a bit, we prove the following statement:
Let a1,a2,…,ana_1, a_2, \dots, a_n be distinct positive integers and let MM be a set of no more than n−1n-1 integers not containing s=a1+a2+⋯+ans = a_1 + a_2 + \dots + a_n. A grasshopper is to jump along the real axis, starting at the point 00 and making nn jumps to the right with lengths a1,a2,…,ana_1, a_2, \dots, a_n in some order. Prove that the order can be chosen in such a way that the grasshopper never lands on any point in MM.

We induct on nn. The base case n=1n=1 is rather trivial. For the inductive step, we assume that the claim is true for all values nn smaller than some integer k>1k > 1. We now consider n=kn=k. Without loss of generality, we may assume that a1<a2<⋯<aka_1 < a_2 < \dots < a_k. Let M={r1,r2,…,rk−1}M = \{r_1, r_2, \dots, r_{k-1}\}, with r1<r2<⋯<rk−1r_1 < r_2 < \dots < r_{k-1}. We divide into several cases.

(a1) In this case, we assume that r1<anr_1 < a_n and an∉Ma_n \notin M. Then we apply the induction hypothesis to M1=M∖{r1}−an={r2−an,r3−an,…,rn−1−an}M_1 = M \setminus \{r_1\} - a_n = \{r_2 - a_n, r_3 - a_n, \dots, r_{n-1} - a_n\} using jumps a1,a2,…,an−1a_1, a_2, \dots, a_{n-1}. Putting ana_n at the beginning of this sequence of jumps provides the desired route.

(a2) In this case, we assume that r1<anr_1 < a_n and an∈Ma_n \in M. Consider the nn pairwise disjoint sets
{an},{a1,a1+an},{a2,a2+an},…,{an−1,an−1+an}. \{a_n\}, \{a_1, a_1 + a_n\}, \{a_2, a_2 + a_n\}, \dots, \{a_{n-1}, a_{n-1} + a_n\}.
Because MM only has n−1n-1 elements, there is an index ii such that {ai,ai+an}\{a_i, a_i + a_n\} is disjoint from MM. It follows that there are at most n−3n-3 elements in the intersection of MM and the interval [ai+an,s][a_i + a_n, s], because r1r_1 and ana_n are not in the interval. We apply the induction hypothesis to M2=M∩[ai+an,s]−(ai+an)M_2 = M \cap [a_i + a_n, s] - (a_i + a_n) using jumps a1,a2,…,ai−1,ai+1,…,an−1a_1, a_2, \dots, a_{i-1}, a_{i+1}, \dots, a_{n-1}. Putting aia_i and ana_n at the beginning (in that order) provides the desired route.

(b) In this case, we assume that r1≥anr_1 \ge a_n. We consider M3=M∖{r1}−an={r2−an,r3−an,…,rn−1−an}M_3 = M \setminus \{r_1\} - a_n = \{r_2 - a_n, r_3 - a_n, \dots, r_{n-1} - a_n\}. We apply the induction hypothesis to M3M_3 using jumps a1,a2,…,an−1a_1, a_2, \dots, a_{n-1}; and let the resulting route be Rn−1=(i1,i2,…,in−1)\mathcal{R}_{n-1} = (i_1, i_2, \dots, i_{n-1}).

If this route Rn−1\mathcal{R}_{n-1} does not step on r1−anr_1 - a_n (in particular, it follows that r1>anr_1 > a_n), then the route Rn=(an,i1,i2,…,in−1)\mathcal{R}_n = (a_n, i_1, i_2, \dots, i_{n-1}) will do the job.

Otherwise, the route Rn\mathcal{R}_n contains exactly one point of MM, namely, r1r_1. Hence, there exists an index kk with 1≤k≤n−11 \le k \le n-1 such that
an+ai1+⋯+aik=r1. a_n + a_{i_1} + \dots + a_{i_k} = r_1.
We then consider the route
Rn′=(i1,i2,…,ik+1,an,ik+2,…,in−1). \mathcal{R}'_n = (i_1, i_2, \dots, i_{k+1}, a_n, i_{k+2}, \dots, i_{n-1}).
We claim that this route Rn′\mathcal{R}'_n will do the job, which completes our proof. Indeed, because
ai1+⋯+aik+1<ai1+⋯+aik+an=r1, a_{i_1} + \dots + a_{i_{k+1}} < a_{i_1} + \dots + a_{i_k} + a_n = r_1,
the grasshopper will not land on the points of MM during the first k+1k+1 jumps. On the other hand, during the remaining part of the route, it lands on the same points as in the route Rn\mathcal{R}_n (and these points are not less than ai1+ai2+⋯+aik+1+an>r1a_{i_1} + a_{i_2} + \dots + a_{i_{k+1}} + a_n > r_1), so it will not land on points of MM as well. Therefore, this route Rn′\mathcal{R}'_n allows the grasshopper to completely avoid landing on points in MM.

Want a route through all this instead of an archive? The track puts 2,604 problems in a working order, from Junior Challenge level to the IMO shortlist.

Source: MathNet, licensed CC-BY-4.0. Statement reproduced verbatim; metadata (topic, difficulty) added by this project.