Difference between revisions of "2014 AMC 12A Problems/Problem 24"

m (Solution 1)
(Solution 2: revise and elaborate)
(9 intermediate revisions by 5 users not shown)
Line 7: Line 7:
 
\textbf{(D) }302\qquad
 
\textbf{(D) }302\qquad
 
\textbf{(E) }303\qquad</math>
 
\textbf{(E) }303\qquad</math>
 +
 
==Solution 1==
 
==Solution 1==
  
1. Draw the graph of <math>f_0(x)</math> by dividing the domain into three parts.  
+
1. Draw the graph of <math>f_0(x)</math> by dividing the domain into three parts.
 +
<asy>
 +
unitsize(0);
 +
 
 +
int w = 250;
 +
int h = 125;
 +
 
 +
xaxis(-w,w,Ticks(100.0),Arrows);
 +
yaxis(-h,h,Ticks(100.0),Arrows);
 +
 
 +
draw((-100,-h)--(-100,h),dashed);
 +
draw((100,-h)--(100,h),dashed);
 +
 
 +
real f0(real x) { return x + abs(x-100) - abs(x+100); }
 +
draw(graph(f0,-w,w),Arrows);
 +
label("$f_0$",(-w,f0(-w)),W);
 +
</asy>
 +
 
 +
2. Apply the recursive rule a few times to find the pattern.
 +
 
 +
<b>Note:</b> <math>f_n(x) = |f_{n-1}(x)| - 10</math> is used to enlarge the difference, but the reasoning is the same.
 +
<asy>
 +
unitsize(0);
 +
 
 +
int w = 350;
 +
int h = 125;
 +
 
 +
xaxis(-w,w,Ticks(100.0),Arrows);
 +
yaxis(-h,h,Ticks(100.0),Arrows);
 +
 
 +
draw((-100,-h)--(-100,h),dashed);
 +
draw((100,-h)--(100,h),dashed);
 +
 
 +
int s = 10;
 +
 
 +
real f0(real x) { return x + abs(x-100) - abs(x+100); }
 +
real f(real x, int k) { real a = abs(f0(x))-s*k; return a >= -s ? a : k%2 == 0 ? abs(x%(2*s)-s)-s : -abs(x%(2*s)-s); }
 +
 
 +
real f1(real x) { return f(x,1); }
 +
real f2(real x) { return f(x,2); }
 +
real f3(real x) { return f(x,3); }
 +
real f4(real x) { return f(x,4); }
 +
 
 +
draw(graph(f0,-w,w,w*2#s),Arrows);
 +
draw(graph(f1,-w,w,w*2#s),red,Arrows);
 +
draw(graph(f2,-w,w,w*2#s),orange,Arrows);
 +
draw(graph(f3,-w,w,w*2#s),lightolive,Arrows);
 +
 
 +
label("$f_0$",(-w,f0(-w)),W);
 +
label("$f_1$",(-w,f1(-w)),NW,red);
 +
label("$f_2$",(-w,f2(-w)),W,orange);
 +
label("$f_3$",(-w,f3(-w)),SW,lightolive);
 +
</asy>
 +
 
 +
3. Extrapolate to <math>f_{100}</math>. Notice that the summits start <math>100</math> away from <math>0</math> and get <math>1</math> closer each iteration, so they reach <math>0</math> exactly at <math>f_{100}</math>.
 +
<asy>
 +
unitsize(0);
 +
 
 +
int w = 350;
 +
int h = 125;
 +
 
 +
xaxis(-w,w,Ticks(100.0),Arrows);
 +
yaxis(-h,h,Ticks(100.0),Arrows);
 +
 
 +
draw((-100,-h)--(-100,h),dashed);
 +
draw((100,-h)--(100,h),dashed);
 +
 
 +
int s = 10;
 +
 
 +
real f0(real x) { return x + abs(x-100) - abs(x+100); }
 +
real f(real x, int k) { real a = abs(f0(x))-s*k; return a >= -s ? a : k%2 == 0 ? abs(x%(2*s)-s)-s : -abs(x%(2*s)-s); }
 +
 
 +
real f1(real x) { return f(x,1); }
 +
real f2(real x) { return f(x,2); }
 +
real f3(real x) { return f(x,3); }
 +
real f4(real x) { return f(x,4); }
 +
real f98(real x) { return f(x,100#s-2); }
 +
real f99(real x) { return f(x,100#s-1); }
 +
real f100(real x) { return f(x,100#s); }
 +
 
 +
draw(graph(f0,-w,w,w*2#s),Arrows);
 +
draw(graph(f1,-w,w,w*2#s),red,Arrows);
 +
draw(graph(f2,-w,w,w*2#s),orange,Arrows);
 +
draw(graph(f3,-w,w,w*2#s),lightolive,Arrows);
 +
draw(graph(f98,-w,w,w*2#s),heavygreen,Arrows);
 +
draw(graph(f99,-w,w,w*2#s),blue,Arrows);
 +
draw(graph(f100,-w,w,w*2#s),purple,Arrows);
  
2. Look at the recursive rule. Take absolute of the previous  function and down by 1 to get the next function.
+
label("$f_0$",(-w,f0(-w)),W);
 +
label("$f_1$",(-w,f1(-w)),NW,red);
 +
label("$f_2$",(-w,f2(-w)),W,orange);
 +
label("$f_3$",(-w,f3(-w)),SW,lightolive);
 +
label("$f_{98}$",(-w,f98(-w)),NW,heavygreen);
 +
label("$f_{99}$",(-w,f99(-w)),W,blue);
 +
label("$f_{100}$",(-w,f100(-w)),SW,purple);
 +
</asy>
  
3. Count the x intercepts of the each function and find the pattern.
+
<math>f_{100}(x)</math> reaches <math>0</math> at <math>x = -300</math>, then zigzags between <math>0</math> and <math>-1</math>, hitting <math>0</math> at every even <math>x</math>, before leaving <math>0</math> at <math>x = 300</math>.
  
The pattern turns out to be <math>3n+3</math> solutions,x interval:[1,99], the function gain only one extra solution after <math>f_{99}(x)</math> because there is no summits on the graph any more, and the answer is thus <math>\textbf{(C) }301\qquad</math>.
+
This means that <math>f_{100}(x) = 0</math> at all even <math>x</math> where <math>-300 \le x \le 300</math>. This is a <math>701</math>-integer odd-size range with even numbers at the endpoints, so just over half of the integers are even, or <math>\frac{701+1}{2} = \boxed{\textbf{(C) }301}</math>.
(Revised by Flamedragon & Jason,C)
+
(Revised by Flamedragon & Jason,C & [[User:emerald_block|emerald_block]])
  
 
==Solution 2==
 
==Solution 2==
  
First, notice that the recursion and the definition of <math>f_0(x)</math> require that for all <math>x</math> such that <math>-100 \le x \le 100</math>, if <math>f_{100}(x)=0</math>, then <math>f_0(x)</math> is even. Now, we can do case work on <math>x</math> to find which values of <math>x</math> (such that <math>-100 \le x \le 100</math>) make <math>f_0(x)</math> even. The answer comes out to be all the even values of <math>x</math> in the range <math>-100 \le x \le 100</math>. So, the answer is <math>2\cdot150+1</math> or <math>\boxed{\textbf{(C)}\ 301}</math>.
+
First, notice that the recursive rule moves the current value <math>1</math> closer to <math>0</math>. Upon reaching <math>0</math>, it alternates between <math>-1</math> and <math>0</math>. This means that <math>f_{100}(x) = 0</math> exactly when <math>|f_0(x)| \le 100</math> (to reach <math>0</math> in time) and <math>f_0(x)</math> is even (so <math>f_{100}(x) \ne -1</math>).
 +
 
 +
Casework each part of <math>f_0(x)</math> (where the expressions in the absolute values do not change sign):
 +
<cmath>x \le -100 \implies f_0(x) = x-(x-100)+(x+100) = x+200</cmath>
 +
so even <math>-300 \le x \le -100</math> work.
 +
<cmath>-100 \le x \le 100 \implies f_0(x) = x-(x-100)-(x+100) = -x</cmath>
 +
so even <math>-100 \le x \le 100</math> work.
 +
<cmath>100 \le x \implies f_0(x) = x+(x-100)-(x+100) = x-200</cmath>
 +
so even <math>100 \le x \le 300</math> work.
 +
 
 +
Putting these together, all even <math>x</math> where <math>-300 \le x \le 300</math> work. So, the answer is <math>2\cdot150+1 = \boxed{\textbf{(C)}\ 301}</math>.
 +
~revised by [[User:emerald_block|emerald_block]]
 +
 
 +
== Video Solution by Richard Rusczyk ==
 +
 
 +
https://artofproblemsolving.com/videos/amc/2014amc12a/383
 +
 
 +
~ dolphin7
  
 
==See Also==
 
==See Also==
 
{{AMC12 box|year=2014|ab=A|num-b=23|num-a=25}}
 
{{AMC12 box|year=2014|ab=A|num-b=23|num-a=25}}
 
{{MAA Notice}}
 
{{MAA Notice}}

Revision as of 20:54, 4 November 2021

Problem

Let $f_0(x)=x+|x-100|-|x+100|$, and for $n\geq 1$, let $f_n(x)=|f_{n-1}(x)|-1$. For how many values of $x$ is $f_{100}(x)=0$?

$\textbf{(A) }299\qquad \textbf{(B) }300\qquad \textbf{(C) }301\qquad \textbf{(D) }302\qquad \textbf{(E) }303\qquad$

Solution 1

1. Draw the graph of $f_0(x)$ by dividing the domain into three parts. [asy] unitsize(0);  int w = 250; int h = 125;  xaxis(-w,w,Ticks(100.0),Arrows); yaxis(-h,h,Ticks(100.0),Arrows);  draw((-100,-h)--(-100,h),dashed); draw((100,-h)--(100,h),dashed);  real f0(real x) { return x + abs(x-100) - abs(x+100); } draw(graph(f0,-w,w),Arrows); label("$f_0$",(-w,f0(-w)),W); [/asy]

2. Apply the recursive rule a few times to find the pattern.

Note: $f_n(x) = |f_{n-1}(x)| - 10$ is used to enlarge the difference, but the reasoning is the same. [asy] unitsize(0);  int w = 350; int h = 125;  xaxis(-w,w,Ticks(100.0),Arrows); yaxis(-h,h,Ticks(100.0),Arrows);  draw((-100,-h)--(-100,h),dashed); draw((100,-h)--(100,h),dashed);  int s = 10;  real f0(real x) { return x + abs(x-100) - abs(x+100); } real f(real x, int k) { real a = abs(f0(x))-s*k; return a >= -s ? a : k%2 == 0 ? abs(x%(2*s)-s)-s : -abs(x%(2*s)-s); }  real f1(real x) { return f(x,1); } real f2(real x) { return f(x,2); } real f3(real x) { return f(x,3); } real f4(real x) { return f(x,4); }  draw(graph(f0,-w,w,w*2#s),Arrows); draw(graph(f1,-w,w,w*2#s),red,Arrows); draw(graph(f2,-w,w,w*2#s),orange,Arrows); draw(graph(f3,-w,w,w*2#s),lightolive,Arrows);  label("$f_0$",(-w,f0(-w)),W); label("$f_1$",(-w,f1(-w)),NW,red); label("$f_2$",(-w,f2(-w)),W,orange); label("$f_3$",(-w,f3(-w)),SW,lightolive); [/asy]

3. Extrapolate to $f_{100}$. Notice that the summits start $100$ away from $0$ and get $1$ closer each iteration, so they reach $0$ exactly at $f_{100}$. [asy] unitsize(0);  int w = 350; int h = 125;  xaxis(-w,w,Ticks(100.0),Arrows); yaxis(-h,h,Ticks(100.0),Arrows);  draw((-100,-h)--(-100,h),dashed); draw((100,-h)--(100,h),dashed);  int s = 10;  real f0(real x) { return x + abs(x-100) - abs(x+100); } real f(real x, int k) { real a = abs(f0(x))-s*k; return a >= -s ? a : k%2 == 0 ? abs(x%(2*s)-s)-s : -abs(x%(2*s)-s); }  real f1(real x) { return f(x,1); } real f2(real x) { return f(x,2); } real f3(real x) { return f(x,3); } real f4(real x) { return f(x,4); } real f98(real x) { return f(x,100#s-2); } real f99(real x) { return f(x,100#s-1); } real f100(real x) { return f(x,100#s); }  draw(graph(f0,-w,w,w*2#s),Arrows); draw(graph(f1,-w,w,w*2#s),red,Arrows); draw(graph(f2,-w,w,w*2#s),orange,Arrows); draw(graph(f3,-w,w,w*2#s),lightolive,Arrows); draw(graph(f98,-w,w,w*2#s),heavygreen,Arrows); draw(graph(f99,-w,w,w*2#s),blue,Arrows); draw(graph(f100,-w,w,w*2#s),purple,Arrows);  label("$f_0$",(-w,f0(-w)),W); label("$f_1$",(-w,f1(-w)),NW,red); label("$f_2$",(-w,f2(-w)),W,orange); label("$f_3$",(-w,f3(-w)),SW,lightolive); label("$f_{98}$",(-w,f98(-w)),NW,heavygreen); label("$f_{99}$",(-w,f99(-w)),W,blue); label("$f_{100}$",(-w,f100(-w)),SW,purple); [/asy]

$f_{100}(x)$ reaches $0$ at $x = -300$, then zigzags between $0$ and $-1$, hitting $0$ at every even $x$, before leaving $0$ at $x = 300$.

This means that $f_{100}(x) = 0$ at all even $x$ where $-300 \le x \le 300$. This is a $701$-integer odd-size range with even numbers at the endpoints, so just over half of the integers are even, or $\frac{701+1}{2} = \boxed{\textbf{(C) }301}$. (Revised by Flamedragon & Jason,C & emerald_block)

Solution 2

First, notice that the recursive rule moves the current value $1$ closer to $0$. Upon reaching $0$, it alternates between $-1$ and $0$. This means that $f_{100}(x) = 0$ exactly when $|f_0(x)| \le 100$ (to reach $0$ in time) and $f_0(x)$ is even (so $f_{100}(x) \ne -1$).

Casework each part of $f_0(x)$ (where the expressions in the absolute values do not change sign): \[x \le -100 \implies f_0(x) = x-(x-100)+(x+100) = x+200\] so even $-300 \le x \le -100$ work. \[-100 \le x \le 100 \implies f_0(x) = x-(x-100)-(x+100) = -x\] so even $-100 \le x \le 100$ work. \[100 \le x \implies f_0(x) = x+(x-100)-(x+100) = x-200\] so even $100 \le x \le 300$ work.

Putting these together, all even $x$ where $-300 \le x \le 300$ work. So, the answer is $2\cdot150+1 = \boxed{\textbf{(C)}\ 301}$. ~revised by emerald_block

Video Solution by Richard Rusczyk

https://artofproblemsolving.com/videos/amc/2014amc12a/383

~ dolphin7

See Also

2014 AMC 12A (ProblemsAnswer KeyResources)
Preceded by
Problem 23
Followed by
Problem 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
All AMC 12 Problems and Solutions

The problems on this page are copyrighted by the Mathematical Association of America's American Mathematics Competitions. AMC logo.png