原理:我们都知道,一个月有29|30|31几种类型。当把这些数字转换成二进制表示就成了一下表示方法:
1 1
10 2
100 4 共有5组数组表
1000 8
10000 16
将这一个月中的天数,有哪些数字和构成,就将该数字村放入对应的数据表中,则构成5组数据表如下:
1. 1 3 5 7 2. 2 3 6 7 3. 4 5 6 7 4. 8 9 10 11 5. 16 17 18 19
9 11 13 15 10 11 14 15 12 13 14 15 12 13 14 15 20 21 22 23
17 19 21 23 18 19 22 23 20 21 22 23 24 25 26 27 24 25 26 27
25 27 29 31 26 27 30 31 28 29 30 31 28 29 30 31 28 29 30 31
接下来开始依次询问,天数是否在该表的中,如果在的话,提取该数据表的第一个数,否则,不提取。最终提取的各数之后就是该人的生日所在的天数。