Link Utilization $=\dfrac{\text{Amount of data sent}}{\text{Max. amount of data that could be sent}}$
Let $x$ be the frame size in bits.
In stop-and-wait protocol, once a frame is sent, next frame won't be sent until ACK is received.
Time for this,
RTT $=\text{Propagation delay for frame + Transmission time for frame}$
$\qquad\text{+ Propagation delay for ACK + Transmission time for ACK}$
$= 20\ \text{ms} +\dfrac{ x }{64\ \text{ms}}+20\ \text{ms} + 0$ (as given in question)
$=\left(40 +\dfrac{x}{64}\right)\ \text{ms}$.
Amount of data sent during RTT $= x$
Max. amount of data that could be sent $ = \left(40 +\dfrac{x}{64}\right)\times 64=2560+x\ \text{bits}$.
So, link utilization,$0.5 = \dfrac{x}{(2560 + x)}$
$x= 2560\ \text{bits} = 320\ \text{bytes}$.
Alternative Approach ,
Link utilization or efficiency of stop and wait protocol is ,
efficiency $=\dfrac{T_x}{(T_x + 2T_p)}=\dfrac{1}{\left(1+2\left(\dfrac{T_p}{T_x}\right)\right)}=\dfrac{1}{(1 +2a)},$
where , Transmission time $=T_x=\dfrac{\text{packet size}}{\text{bandwidth}}=\dfrac{L}{B}$
Propagation time$=T_p=\dfrac{\text{distance}}{\text{speed}}=\dfrac{d}{v},$ and
$a=\dfrac{\text{Propagation time}}{\text{Transmission time}}=\dfrac{T_p}{T_x},$
Now for $50\%$ efficiency ,
efficiency $=\dfrac{1}{(1+2a)}$
$50\%=\dfrac{1}{(1+2a)}$
$\dfrac{1}{2}=\dfrac{1}{(1 +2a)}$
$2=(1+2a)$
$2-1=2a$
$1=2\left(\dfrac{T_p}{T_x}\right)$
$T_x =2\times T_p$
$\dfrac{L}{B}=2\times 20\ \text{ms}$
$L=2\times 20\ \text{ms} \times B=2\times 20\times 10^{-3}\times 64\text{ k bits}$
$ =2\times 20\times 10^{-3}\times 64\times 10^3\ \text{bits}$
$L=40\times 64\ \text{bits} = 40\times \dfrac{64}{8}\ \text{bytes} = 40\times 8\ \text{bytes} = 320\text{ bytes (answer)}$