Equivalent metrics determine the same topology

I think this might help. I suppose you define an open set (in a metric space as)

DEFINITION 1 A set is open if it is a neighborhood of each of its points.

Now you can prove this simple lemma:

LEMMA 1 Every open ball is a neighborhood of each of its points.

PROOF Let $B=B(x;\epsilon)$ be an open ball around $x\in X$ with radius $\epsilon$. Let $y\in B$. We want to prove there is an open ball around $y$ contained in $B$. Let $\delta=\epsilon -d(x,y)$. We claim if we let $r<\delta$ then $B'=B'(y,r)\subset B(x,\epsilon)$. Indeed, let $x'\in B'$. Then $$\begin{align} d(x',x)&\leq d(x',y)+d(y,x) \\ &<\epsilon -d(x,y)+d(x,y)\\&=\epsilon. \end{align}$$

Maybe an image would have been nicer:

$\hspace{4.5 cm}$enter image description here

THEOREM 1 A set is open if and only if it is a union of open balls.

PROOF First suppose the set $O$ is open. Then it is a neighborhood of each of its points, so it contains, for each $x\in O$, an open ball $B(x,\epsilon_x)$ (the radius depends on this $x$, too), so we may write

$$O=\bigcup_{x\in O}B(x,\epsilon_x)$$

that is, it is a union of open balls.

Conversely, suppose the set $O$ is a union of open balls. Then each $x\in O$ is contained in some open ball of this set. But the previous LEMMA says this ball contains another open ball about this particular point. Since this point was arbitrarily chosen, we can conclude $O$ is a neighborhood of each of its points, so it is open.

The idea is that open balls "make up" open sets, they are the "basic" open sets (because themselves are open) that make up the "bigger ones".

So, back to your question: suppose that we have two metrics, $d_1$ and $d_0$. We know that in each of the metric spaces associated to them, the open sets are determined precisely by the open balls of $d_0$, call them $B_0$, and the open balls of $d_1$ call them $B_1$. Now suppose we have an open ball $B_0$ in $(X,d_0)$:

$$B_0=B_0(x,r).$$

The hypothesis is that

For every $\epsilon$ there exists a $\delta >0$ such that $d_0(x,y)<\delta$ implies $d_1(x,y)<\epsilon$ and vice versa.

Putting this in terms of open balls, it says

Whenever we have a ball $B_1(x,\epsilon)$; there is a $\delta$ such that $B_0(x,\delta)\subset B_1(x,\epsilon)$ and vice versa.

This is saying that every open ball of $d_0$ about a point $x$ contains another open ball of $d_1$ about the same point, and vice versa. So let's use this to prove that the open sets of one metric space are the same as those in the other:

THEOREM 2 Let $d_0$ and $d_1$ be such that for every $\epsilon>0$ and $x\in X$, there is a $\delta$ such that $B_0(x,\delta)\subset B_1(x,\epsilon)$ and vice versa. Then a set $O$ is open $(X,d_0)$ if and only if it is open in $(X,d_1)$.

PROOF Let $O$ be open in $(X,d_1)$. Then by THEOREM 1 it is a union of open $d_1$-balls, that is $$O=\bigcup_{x\in O}B_1(x,\epsilon_x).$$ Let $x\in O$. Then $x\in B_1(x,\epsilon_x)$, so by hypothesis, there is a $\delta_x$ such that $B_0(x,\delta_x)\subset B_1(x,\epsilon_x)$. This means that each point of $O$ contains a $d_0$-ball around it, so by definition, $O$ is also open in $d_0$, since it is a "$d_0$" nbhd of each of its points. Conversely, let $O'$ be open in $d_0$. Then it is a union of open $d_0$-balls, that is

$$O'=\bigcup_{x\in O'}B_0(x,\epsilon'_x).$$

But again, for each point of $O'$, there is a $\delta'_x$ for which $B_1(x,\delta'_x)\subset B_0(x,\epsilon'_x)$. This means that each set $O'$ is a "$d_1$" nbhd of each of each of its points, so that is open in $(X,d_1)$, too. This concludes the proof.


Since open sets are the sums of open balls, it suffices to check if those metrices determine the same open balls. Let us denote by $B_d(x,r)$ an open (wrt $d$) ball with a centre in $x\in S$ and a radius $r\gt0$, i.e. $B_d(x,r)=\{y\in S\mid d(x,y)<r\}$.

We will prove an arbitrary open ball $B_d(x_0,r)$ is $d_1$-open. In order to do that, we will show that for every $x\in B_d(x_0,r)$ there exists $r_x$ such that $B_{d_1}(x,r_x)\subset B_d(x_0,r)$.
What we have is $$(*)\quad\forall_{a\in S} \forall_{\varepsilon>0}\exists_{\delta>0}\forall_{b\in S}\ \ d_1(a,b)\lt\delta\implies d(a,b)\lt\varepsilon.$$ (our $a$ is actually $x$ and $\delta$ will be desired $r_x$.)
As has been said, fix an arbitrary $x\in B_d(x_0,r), x\neq x_0$ and set $\varepsilon=\min{(d(x,x_0),r-d(x,x_0))}>0.$ From $(*)$ we know that there exists $\delta>0$ such that for all $y\in S$ $$(1)\quad d(x,y)<\min{(d(x,x_0),r-d(x,x_0))}\le r-d(x,x_0)$$ as long as $d_1(x,y)\lt\delta$.
Now we could reformulate (1) by adding $d(x,x_0)$ to both sides and applying triangle inequality: $$d(x_0,y)<d(x,y)+d(x,x_0)<r.$$ Thus, what we proved is: $$\forall_{x\in B_d(x_0,r)}\exists_{\delta>0} \forall_{y\in S}\ y\in B_{d_1}(x,\delta) \implies y\in B_d(x_0,r)$$ and, in other words, it means that every $x\neq x_0$ from $d$-ball is contained there with some small $d_1$-ball, that is $d$-ball is open in the sense of metric $d_1$. For $x_0$, the existence of such $d_1$-ball is ensured by $(*)$ directly (take $\varepsilon=r)$.
Entirely analogously, one can prove second part of the problem.