Su principal razonamiento es correcto, pero la redacción es un poco off, y un par de detalles en la forma de pensar.
Tenga en cuenta que $b \notin S$, lo que significa que $s < b$, que es lo importante, y al igual, $a < s$. Lo que se utiliza $\epsilon$, se suele denotar por $\delta$. Una más convencional $\epsilon$$\gamma - f(s)$. Esta es la palabra de la prueba:
Deje $S= \{x\in [a,b]: f(x)\le \gamma\}$. Set $s = \sup S$. Tenga en cuenta que tenemos $a< s < b$ (una pequeña $\epsilon$-$\delta$ el argumento es técnicamente necesario aquí también, tanto por $a<s$$s<b$), y para todos los $x>s$, $f(x) > \gamma$. Ahora nos muestran que podemos tener ni $f(s) > \gamma$ ni $f(s) < \gamma$.
Si $f(s) < \gamma$, luego por la $\epsilon$-$\delta$ definición de continuidad, ajuste de $\epsilon = \gamma - f(s)$, hay un $\delta > 0$ tal que $f(s + h) > \gamma$ todos los $h$$|h|< \delta$. Específicamente, para $h = \min((b-s)/2, \delta/2)$, podemos ver que $s$ no puede ser una cota superior de a $S$, ya que el $s+h \in S$. (El hecho de que el $s < b$ es necesario para tener un margen de maniobra para encontrar una $h$ que da una contradicción)
Si $f(s) > \gamma$, luego tenemos a $s \notin S$. Pero $S$ es cerrado, siendo el inverso de la imagen del intervalo cerrado $[f(a), \gamma]$, por lo que no puede ser el caso.
Ya que no tenemos ni $f(s) < \gamma$$f(s) > \gamma$, debemos tener $f(s) = \gamma$, y hemos terminado.