有三顶黑帽子、两顶白帽子。A、B、C三个人在黑暗中分别拿一顶戴上。开灯后每个人是看不到自己帽子的。A看了其他两个人之后无法判断自己帽子颜色,于是说不知道;B看了其他两人之后也说自己不知道自己帽子颜色;C本来也判断不出自己帽子颜色,但听了A和B的话后,C说可以判断自己的帽子颜色了。A、B、C都没有撒谎,且都足够聪明。请问A、B、C三人各戴什么颜色的帽子?并说明理由。