该问题使用简化的TCP/IP地址模型,请仔细阅读描述。
IP地址是32位整数,表示为一组四位十进制8位整数(没有前导零),用逗号分隔。例如,记录0.255.1.123显示了正确的IP地址,记录为0.256.1.123和0.255.1.01则是不正确的。
我们的小T仍然在一些大公司担任系统管理员。他喜欢漂亮的IP地址。为了检查某个IP地址是否美观,他应该做如下操作:
1.写出一行四位8位的IP地址,没有逗号;
2.检查结果字符串是否为回文。
让我们提醒你回文是一个字符串,从右到左,从左到右。
例如,IP地址12.102.20.121和0.3.14.130是漂亮的(如字符串“1210220121”和“0314130”是回文),IP地址1.20.20.1和100.4.4.1不是。
小T希望找到所有具有给定数字集合的漂亮IP地址。集合中的每个数字必须至少在IP地址中出现一次。IP地址不能包含任何其他数字。帮助他应付这项艰巨的任务。
6
0 1 2 9 8 7
6
78.190.209.187
79.180.208.197
87.190.209.178
89.170.207.198
97.180.208.179
98.170.207.189
1
4
16
4.4.4.4
4.4.4.44
4.4.44.4
4.4.44.44
4.44.4.4
4.44.4.44
4.44.44.4
4.44.44.44
44.4.4.4
44.4.4.44
44.4.44.4
44.4.44.44
44.44.4.4
44.44.4.44
44.44.44.4
44.44.44.44
从 ipadress.in 读入数据。
第一行一个整数 n(1≤n≤10)表示。
第二行有 n个数字,表示可用的数字。
输入数据保证这 n 个数字不会重复。
输出到 ipadress.out 。
一个整数 k,表示所有美丽的ip地址总数。
6
0 1 2 9 8 7
6
对于 10% 的数据:保证 n=1,可用数字 1 或 2;
对于 50% 的数据:保证IP地址中不含 0;
对于 100% 的数据:ai 中可能含有任意数字。