Think about the input $s\in \{0,1\}^n$ for $G$ as $(b,y,s'))$ where $b$ is a bit, $y$ is of length $(n+1)/2$, and $s'$ is the rest (formally, of size $(n-3)/2$). Let $G'$ be any PRG that stretches strings of length $|s'|$ to $n+1$ bits. Define $G$ so that if $b=0$, it would return $y0^{(n+1)/2} \oplus G'(s')$, and if $b=1$, it would return $0^{(n+1)/2}y \oplus G'(s')$.

You can see that $G$ is a PRG, because $G'$ is a PRG and $s'$ is independent of $y$. However, $G(s_1)\oplus G(S_2)$ can always be inverted. Indeed, denote any such strings by its two halves $(u,v)$ and return as the preimage $s_1 = (0,u,s'), s_2 =(1,v,s')$.

]]>The ref solution you published doesn't have it.

Thanks. ]]>