I mainly agree with JamesEaston. I've been to both cities in the last few months. I would suggest 3 days for Amsterdam and agree Bruges will make a wonderful side trip...I don't care for Brussels as much though. I also recommend the half day bus tour of Edam and the windmills.
For Prague, I think you could do two days, but 3 is a more leisurely pace. If you like to have a long lunch with a couple glasses of some of the best beer in the world, and don't want to rush between sites, three days is plenty of time. If you do it in two days, spend one full day on each side of the river.