题目大意:

给你几个IP求给出ip范围内的最小的ip,(ip范围,可以用一个网络地址和一个子网掩码描述一个ip,其中子网掩码包含32个二进制,前32-n位为1,后n位为0,网络地址的前32-n位任意,后n位为0,所有前32-n位和网络地址相同的ip都属于此网络)

题目连接here

解题思路:

ip的四个部分分别处理,每一部分找出最大值的最小值,然后判断是其二进制最后几位不同,得出子网掩码;

用任意一个IP与子网掩码进行按位与运算得出最小IP;

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
const int maxn = 10000+10;
int dns_table[9]={255,254,252,248,240,224,192,128,0};int ip[4][maxn];int main(){int m;while(~scanf("%d",&m)){memset(ip,0,sizeof(ip));int dns[4];int minip[4];for(int i=0;i<m;i++){scanf("%d.%d.%d.%d",&ip[0][i],&ip[1][i],&ip[2][i],&ip[3][i]);}for(int i=0;i<4;i++){int dir=0;int j;sort(ip[i],ip[i]+m);int p=ip[i][m-1];int q=ip[i][0];for(j=1;j<=8;j++){if(p%2!=q%2) dir=j;p/=2;q/=2;}dns[i]=dns_table[dir];minip[i]=ip[i][0] & dns[i];}for(int i=0;i<4;i++){if(dns[i]!=255){for(i=i+1;i<4;i++){dns[i]=0;minip[i]=0;}break;}}printf("%d.%d.%d.%d\n",minip[0],minip[1],minip[2],minip[3]);printf("%d.%d.%d.%d\n",dns[0],dns[1],dns[2],dns[3]);}return 0;
}

转载于:https://www.cnblogs.com/Double-LL/p/6658923.html

UVA 1590 IP Networks相关推荐

  1. UVa 1590 - IP Networks

    UVa 1590 - IP Networks 题意: 可以用一个网络地址和一个子网掩码描述一个子网(即连续的IP地址范围).其中子网掩码包含32个二进制位,前32-n位为1,后n位为0,网络地址的前3 ...

  2. 《算法竞赛入门经典》 习题4-5 IP网络(IP Networks,ACM、ICPC NEERC 2005,UVa1590)

    原题及翻译 Alex is administrator of IP networks. 亚历克斯是IP网络的管理员. His clients have a bunch of individual IP ...

  3. IP Networks

    也可以看这里个人博客 题目链接 题目大意:一共有若干组输入,每组给出一个数m和m个IP地址,求这些IP地址的网络段号和子网掩码. 其实看到这个题之后不是很明白怎么求解,去网上百度了一番之后发现可以先用 ...

  4. POJ 2799 IP Networks

    network address是前(32-n)随意 后n位全零 network mask是前(32-n)全一 后n位全零 本题主要利用位移操作,1ULL表示无符号长整型的常数1,这样写可防止不必要的溢 ...

  5. UVA - 10253 Series-Parallel Networks(递推式、记忆化搜索写法)

    题目:UVA-10253 题目翻译(来自蓝书): 串并联网络有两个端点,一个叫源,一个叫汇,递归定义如下: (1) 一条单独的边是串并联网络. (2) 若G1和G2是串并联网络,把它们的源和源接在一起 ...

  6. robotframework调用python类方法_RobotFramework-调用.py文件

    ubuntu 13.10 monodevelop3 安装 版本 ubuntu 13.10 桌面模式默认:unity :文件管理器:nautilus iOS - UIAlertView 前言 NS_CL ...

  7. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  8. ITU-T Technical Paper: IP服务性能模型

    本文翻译自ITU-T的Technical Paper:<How to increase QoS/QoE of IP-based platform(s) to regionally agreed ...

  9. linux ip route 命令详细解释

    摘自:http://linux-ip.net/html/tools-ip-route.html D.2. ip route Another part of the iproute2 suite of ...

  10. 一篇经典的TCP/IP基础知识英文文章

    一篇经典的TCP/IP基础知识英文文章 INTRODUCTION When you configure the TCP/IP protocol on a Microsoft Windows compu ...

最新文章

  1. WMI技术介绍和应用——查询时间信息
  2. 【综述】介绍这些常用机器学习算法的优缺点
  3. mysql使用group by实现组内排序实战
  4. 异步Socket通信总结[转]
  5. [转]掌控像素的虚实
  6. C++设计模式--观察者模式(Observer)
  7. windows虚拟多桌面常用软件调研
  8. [模板]多项式全家桶小记(求逆,开根,ln,exp)
  9. 组播相对于单播和广播的优势
  10. 基于炼铁大数据智能互联平台推动传统工业转型升级
  11. 字符串处理 —— 单模式匹配
  12. C语言 const、volatile、const volatile限定符理解
  13. ValueError:Tensor(dense_1/Softmax:0, shape=(?, 3), dtype=float32) is not an element of this graph
  14. Matlab低通滤波器的使用--频域图像增强实验
  15. 代码保护软件VMProtect加壳脱壳原理总结
  16. 黄永成-thinkphp讲解-个人博客讲解26集
  17. python爬虫 - 爬取堆糖图片
  18. 哪些短信平台能发国际短信?
  19. 人工智能已经沦为刷榜,刷论文的时代了? 新一代人工智能,认知智能已经来临。道翰天琼。
  20. android请求https(一)生成BKS

热门文章

  1. Windows上的Spark环境搭建后,运行时报错的问题
  2. python只保留大写字母_python - 匹配某一行并保留大写字母?
  3. LeetCode每周刷题(2019.7.1-2019.7.7)
  4. Vue同级组件数据传递
  5. 解决Selection executes are supported only in the DbVisualizer Personal edition
  6. iOS 应用状态详解
  7. 树莓派进阶之路 (027) - 在Linux中增加swap空间
  8. [.NET] 《Effective C#》快速笔记(四)- 使用框架
  9. 重读TCP/IP(2)之链路层
  10. 为什么我不再和别人比较了?