NKOJ 7 7練習題A IP位址

2022-08-12 15:54:16 字數 1672 閱讀 6906

問題描述

可以用乙個網路位址和乙個子網掩碼描述乙個子網(即連續的 ip 位址範圍)。

其中子網掩碼包含 32 個二進位制位,前 32-n 位為 1,後 n 位為 0,網路位址的前 32-n 位任意,後 n 位為 0(0<=n<=32) 。 所有前 32-n 位和網路位址相同的 ip 都屬於此網路。  

例如,網位址為 194.85.160.176(二進位制為 11000010 01010101 10100000 10110000), 子網掩碼為 255.255.255.248(二進位制為 11111111 11111111 11111111 11111000),則該 子網的 ip 位址範圍是 194.85.160.176~194.85.160.183。

現在輸入一些網路位址,請你求出包含所有位址的最小的網路(即包含 ip 位址最少的網路)。 

輸入格式

第一行為乙個整數 m,

接下來的 m 行,每行乙個 ip 位址,可能有多個相同的位址出現。

輸出格式

輸出兩行,表示包含所有輸入的 ip 位址的最小網路,第一行是網路位址,第二行是子網掩碼。 

樣例輸入 1

3 194.85.160.177 

194.85.160.183 

194.85.160.178 

樣例輸出 1

194.85.160.176

255.255.255.248 

樣例輸入 2

3813.147.33.202

13.196.52.141

13.226.34.79

13.206.21.190

13.203.40.180

13.170.55.224

13.130.70.7

13.219.16.38

13.145.103.143

13.186.75.26

13.169.20.47

13.205.56.65

13.179.58.117

13.183.60.208

13.217.44.90

13.187.94.141

13.136.106.67

13.158.17.198

13.133.119.142

13.167.36.93

13.143.28.155

13.171.67.196

13.217.29.58

13.160.112.219

13.145.18.83

13.241.29.106

13.213.26.5

13.147.113.169

13.243.97.63

13.214.78.189

13.148.75.140

13.225.53.222

13.255.19.136

13.162.61.184

13.211.70.254

13.213.23.196

13.140.41.231

13.240.107.124

樣例輸出 2

13.128.0.0

255.128.0.0

提示對於 100%的資料,m<=1000 

【分析】

讀入:scanf("%d.%d.%d.%d", &a[i][1], &a[i][2], &a[i][3], &a[i][4]);

【傳送門】

python書中練習題 python練習題

1 定義乙個空列表,接收從鍵盤輸入的整數,把列表傳給乙個從大到小排序的函式,再輸出排序後的列表的值 listex b 0 a int input 請輸入列表長度 while b a num int input 請輸入字元 b 1 print listex sum 0 for i in range 0...

python的練習題 Python練習題

1 使用while迴圈輸入1 2 3 4 5 6 8 9 10 i 0while i 10 i i 1 if i 7 continue print i 結果 e python python python test.py1 2 求1 100的所有數的和 i 0sum 0 while i 100 i 1...

練習題 基礎練習

第一題 需求 1 計算 5 個月的生活大概開銷 spending 比如 rent 房租 800.00 mealcost 吃飯 900.00 clothingcosts 買衣服 300.00 othercosts 其他費用 300.00 public class dome1 第二題 需求 2 計算 1...