IP聚合 百度之星(與運算)

2022-08-10 13:36:13 字數 1654 閱讀 2744

problem description

當今世界,網路已經無處不在了,小度熊由於犯了錯誤,當上了度度公司的網路管理員,他手上有大量的 ip列表,小度熊想知道在某個固定的子網掩碼下,有多少個網路位址。網路位址等於子網掩碼與 ip 位址按位進行與運算後的結果,例如:

子網掩碼:a.b.c.d

input

第一行包含乙個整數tt,(1 \leq t \leq 50)(1≤t≤50)代表測試資料的組數,

接下來tt組測試資料。每組測試資料報含若干行,

第一行兩個正整數n(1 \leq n \leq 1000, 1 \leq m \leq 50),mn(1≤n≤1000,1≤m≤50),m。接下來nn行,每行乙個字串,代表乙個 ip 位址,

再接下來mm行,每行乙個字串代表子網掩碼。ip 位址和子網掩碼均採用 a.b.c.da.b.c.d的形式,其中a,b,c,da,b,c,d均為非負整數,且小於等於255。

output

對於每組測試資料,輸出兩行:

第一行輸出: "case #i:" 。ii代表第ii組測試資料。

第二行輸出測試資料的結果,對於每組資料中的每乙個子網掩碼,輸出在此子網掩碼下的網路位址的數量。

sample input

2

5 2192.168.1.0

192.168.1.101

192.168.2.5

192.168.2.7

202.14.27.235

255.255.255.0

255.255.0.0

4 2127.127.0.1

10.134.52.0

127.0.10.1

10.134.0.2

235.235.0.0

1.57.16.0

sample output

case #1:32

case #2:34

題目大意: 給你ip位址和子網位址 然後通過與運算 算出每乙個子網位址中有多少個不同的網路位址

我今天才知道 與運算原來就是符號「&」 直接就行了

#include#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

#define inf 0xfffffff

#define esp 1e-8

#define memset(a,b) memset(a,b,sizeof(a))

#define n 2100

struct

node

zi[n],ip[n],ans[n];

intcmp(node x,node y)

intmain()

for(int i=0;i)

printf(

"case #%d:\n

",t++);

for(int i=0;i)

sort(ans,ans+n,cmp);

for(int j=1;j)

printf(

"%d\n

",n-sum);}}

return0;

}

百度之星 1003 IP聚合

當今世界,網路已經無處不在了,小度熊由於犯了錯誤,當上了度度公司的網路管理員,他手上有大量的 ip列表,小度熊想知道在某個固定的子網掩碼下,有多少個網路位址。網路位址等於子網掩碼與 ip 位址按位進行與運算後的結果,例如 第一行包含乙個整數t,1 t 50 代表測試資料的組數,接下來t組測試資料。每...

百度之星 資格賽 IP聚合

保持著也不知道什麼情懷,覺得到現在才能發出來。這道題做完之後看了其他人的 然後再看我的,不得不說,真是幼稚的很,尤其是輸入這一塊,都什麼跟什麼啊。但相較於之前來說,不像以前慌張了,學會先思考再去寫 明白了函式的一些用處與含義。我知道乙個大四的老狗說這種話倒還真是夠沒面子的,但希望自己每天都在成長。你...

百度之星IP聚合(水題map 字元處理)

雖然題目停水的,但是好像字元處理運用的還比較合適 problem description 當今世界,網路已經無處不在了,小度熊由於犯了錯誤,當上了度度公司的網路管理員,他手上有大量的 ip列表,小度熊想知道在某個固定的子網掩碼下,有多少個網路位址。網路位址等於子網掩碼與 ip 位址按位進行與運算後的...