华为机试2020 0325

华为笔试题(2020年3月25)
第一道
给定两个ip地址和一个子网掩码,如果两个ip地址跟子网掩码二进制按位与之后的结果相同,则认为两个ip地址属于同一个网段。
例如192.168.1.1(11000000 10101000 00000001 00000001)与子网掩码255.25.255.240(11111111 11111111 11111111 11110000)二进制按位与之后为192.168.1.0(11000000 10101000 00000001 00000000)现给定两个ip地址和一个子网掩码,判断两个ip地址是否是一个网段,并按照要求输出第一个ip地址与子网掩码二进制按位与之后的ip

输入: 输入的格式:ip地址1 ip地址2 子网掩码,三个字段之间有空格分隔,给定的ip地址和子网掩码一定是合法的

输出:0或1 第一个ip地址与子网掩码二进制按位与之后的。0代表不是同一个字段,1代表是同一个字段

第二道
实现一个程序sesrch_matrix(matrix),参数matrix是一个仅包含0或1两种数字的矩阵,程序应返回输入矩阵中包含的最大正方形子矩阵(长宽相等)的区域面积
例如:如果matrix是【“1010111111”,“0000000111”,“1010110111”,“0000110001”】,那么他看起来像下面的矩阵1010111111
0000000111
1010110111
0000110001
对于上面的输入,最大的子矩阵是一个3×3的矩阵,程序只要返回最大子矩阵的面积即可,如上面的矩阵返回9(3×3)

输入:第一行输入一个数字N,代表几行,第二行到第N+1行是代表矩阵的01组成的字符串,每行长度相等

输出返回一个数字,最大子矩阵面积

求解答,最好是java解答,谢谢

你可能感兴趣的:(笔记)