The reason why the answer is 6 is written in the output provided. In order to route between different ip networks you need to cross "transit" links, which in basic IP networks must be also addressed. Your response was correct (4) for the amount of subnets needed for hosts hosted behind those routers, but then you have two "uplinks" between those 3 routers that you need to account subnets for.
It's a bit of a misleading question though, because those "uplinks" can also be unnumbered (not having p2p IP addresses). I would have also answered 4.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…