我是通过反推思考的
从结果来分析有两种情况:
第一种:通过自己看能判断出自己颜色
在自己的视角里有两个白色帽子,因为白色帽子只有两个,所以立马能判断出自己剩下的是黑色。
根据题目表述这种情况没有发生,所以pass
第二种:通过自己看无法判断自己的颜色
在自己的视角里两个黑色帽子或者一黑一白
所以就剩下三个黑色或者两黑一白或者两白一黑(这种情况前面已经pass所以不予考虑)

三个黑色:A戴黑色,B戴黑色,C戴黑色
A的视角 B和C都是黑色,无法判断自己颜色 (与题目表述相符,成立)
B的视角 A和C都是黑色,无法判断自己颜色(与题目表述相符,成立)
C的视角 A和B都是黑色 ,无法判断自己颜色 (与题目表述相符,成立)
C听了A的话,知道B和C为两黑或者一黑一白,由于看到A黑B黑,所以自己有可能黑有可能白,无法判断自己颜色(与题目表述相符,成立)
C听了B的话,知道A和C为两黑或者一黑一白,由于看到A黑B黑,所以自己有可能黑有可能白,依然无法判断自己颜色(与题目表述不符合,所以不成立)

两黑一白:A白色,B黑色,C黑色
A的视角 B和C都是黑色,无法判断自己颜色 (与题目表述相符,成立)
B的视角 A白色,C黑色,无法判断自己颜色(与题目表述相符,成立)
C的视角 A白色,B黑色,无法判断自己颜色(与题目表述相符,成立)
C听了A的话,知道B和C为两黑或者一黑一白,由于看到A白B黑,所以知道自己有可能黑有可能白,无法判断自己颜色(与题目表述相符,成立)
C听了B的话,知道A和C为两黑或者一黑一白,由于看到A白B黑,所以知道自己为白,可以判断自己颜色(与题目表述相符,成立)

以上