2015百度之星资格赛 IP聚合 1003
发布时间:2020-12-13 22:27:03 所属栏目:百科 来源:网络整理
导读:IP聚合 Accepts: 2354 Submissions: 6308 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description 当今世界,网络已经无处不在了,小度熊由于犯了错误,当上了度度公司的网络管理员,他手上有大量的 IP列表
IP聚合
Accepts: 2354
Submissions: 6308
Time Limit: 2000/1000 MS (Java/Others)
Memory Limit: 65536/65536 K (Java/Others)
#include<stdio.h> #include<string.h> #include<queue> #include<algorithm> #include<stack> using namespace std; int a[1010],b[1010],c[1010],d[1010]; int p1[1010],p2[1010],p3[1010],p4[1010]; int main() { int t; int res[1100]; scanf("%d",&t); int num=1; while(t--){ memset(res,sizeof(res)); int n,m; scanf("%d%d",&n,&m); for(int i=0;i<n;i++) scanf("%d.%d.%d.%d",&a[i],&b[i],&c[i],&d[i]); int A,B,C,D; for(int i=0;i<m;i++){ scanf("%d.%d.%d.%d",&A,&B,&C,&D); int t1,t2,t3,t4; int tot=1; for(int j=0;j<n;j++){ int x=0; t1=A&a[j],t2=B&b[j],t3=C&c[j],t4=D&d[j]; if(j==0){ p1[1]=t1,p2[1]=t2,p3[1]=t3,p4[1]=t4; continue; } for(int k=1;k<=tot;k++){ if(t1==p1[k]&&t2==p2[k]&&t3==p3[k]&&t4==p4[k]) x=1; } if(!x){ tot++; p1[tot]=t1,p2[tot]=t2,p3[tot]=t3,p4[tot]=t4; } } res[i]=tot; } printf("Case #%d:n",num++); for(int i=0;i<m;i++) printf("%dn",res[i]); } return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |