BW both the sides will be $10^6$ bps for a full-duplex channel/wire/link.
We are actually only considering transit to one side while transmission of the packets to fully pack them in the link(106 bps). So, instead of the general approach of taking $1+2a$ packets, here we are taking $1+a$ packets since we are only considering the time of $1$ Tp, we need to keep the link full for $1$ Tp.
So, Min. no. of packets required $= 1 + a = 1 + \frac{25}{1} = 26$ packets.
Min. no. of bits required $= log_2(26) = 5$ bits.
So, $5$ bits are enough to pack one side of the link while the frames are in transit.
Actually, both the hosts will send data packets and acknowledgments, but for both the sides, $5$ bits are enough individually to fully pack $10^6$ bits from both the sides(full-duplex). Here, to keep things simple, I have only discussed considering one sender and one receiver only.
For optimal case, when we also consider the time of the acknowledgment coming back, that time also packets can be kept on transmitting in the channel,
So, Min. no. of packets required $= 1 + 2a = 1 + 2*\frac{25}{1} = 51$ (doesn't matter if the ack. is piggybacked or not).
and Min. no. of bits req $= log_2(51) = 6$ if we want this kind of link utilization.
Again, here also for simplicity, only considered one sender and one receiver.
But in reality both the hosts will act as source and destination simultaneously. Obviously, the acknowledgments will be piggybacked in such a practical case.