I would suggest using the Rott's grids. A Rott's grid is a graphical application of De Morgan's laws and it is particularly useful for solving problems like yours. Some logic gates require more transistors than others. The need to reduce potential delays at the logic gates may be the motivation for optimizing the design using gates NOR or NAND. Finding a corresponding function – with the logic gates you need – can be done really quickly using Rott's grids:
Every Rott's grid is created according to these three principles:
- the De Morgan's laws are respected by switching between the ⋅ (the conjunction) and the + (the disjunction) and dividing them with the horizontal lines (negations),
- the vertical lines separate the individual inputs, changing the number of logic gates' inputs,
- on the last line are placed the input variables either in their prime or negated form – that is determined individually by the number of horizontal lines above them.
All of the five following grids are different representations of the given function:
a ⋅ b ⋅ c a ⋅ b ⋅ c a ⋅ b ⋅ c a ⋅ b ⋅ c a ⋅ b ⋅ c
| | ----------- ----------- ----------- -----------
a | b | c + + + + + + + +
----------- ----------- | ------ | ------
⋅ ⋅ ⋅ ⋅ | ⋅ | ⋅
| ------ ------ | | ------ | |
| + + | | + ¬a | b | c
| ------ ------ | | |
| ⋅ ⋅ | ¬a | ¬b|¬c
| | | |
a | b | c a | b | c

The first grid is not really useful, it is just the original function implemented by a 3-input AND:
f = a ⋅ b ⋅ c
The second Rott's grid is implemented using only 2-input NANDs. You can use either two 2-input NANDs and two inverters or four 2-input NANDs – two of them in the inverters' place, because a 2-input NAND with the same input on both pins, inverts the signal.
f = ¬(nand(a,¬(nand(b,c))))
The third Rott's grid is just a variation on the first one.
f = ¬(nand(¬(nand(a,b)),c))
The fourth Rott's grid can be realized by using two 2-input NORs and four inverters. The inverters can be substituted by 2-input NORs or 2-input NANDs.
f = nor(¬a,¬(nor(¬b,¬c))))
The fifth Rott's grid can be realized by combination of one 2-input NOR, one 2-input NAND and one inverter.
f = nor(not(a),nand(b,c))
(The picture was generated using online latex tool.)