子网掩码(25分)

  • 问题描述

子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单。
请看以下示例:
运算演示之一:
IP地址  192.168.0.1
子网掩码  255.255.255.0
转化为二进制进行运算:
IP地址  11000000.10101000.00000000.00000001
子网掩码 11111111.11111111.11111111.00000000
AND运算:
11000000.10101000.00000000.00000000
转化为十进制后为:
192.168.0.0
运算演示之二:
IP地址  192.168.0.254
子网掩码  255.255.255.0
转化为二进制进行运算:
IP地址  11000000.10101000.00000000.11111110
子网掩码 11111111.11111111.11111111.00000000
AND运算:
11000000.10101000.00000000.00000000
转化为十进制后为:
192.168.0.0
运算演示之三:
IP地址  192.168.0.4
子网掩码  255.255.255.0
转化为二进制进行运算:
IP地址  11000000.10101000.00000000.00000100
子网掩码 11111111.11111111.11111111.00000000
AND运算:
11000000.10101000.00000000.00000000
转化为十进制后为:
192.168.0.0
通过以上对三组计算机IP地址与子网掩码的AND运算后,我们可以看到它运算结果是一样的,均为192.168.0.0,所以计算机就会把这三台计算机视为在同一子网络。

  • 输入

输入的第一行是本机IP地址;
第二行是子网掩码;
第三行是一个整数N,表示后面有N个IP地址;
接下来N行:
第1个IP地址


第N个IP地址

  • 输出

计算并输出N个IP地址是否与本机在同一子网内。对于在同一子网的输出“INNER”,对于在不同子网的输出“OUTER”。

  • 输入样例

192.168.0.1
255.255.255.0
3
192.168.0.2
192.168.0.254
192.168.1.2

  • 输出样例

INNER
INNER
OUTER

#include<bits/stdc++.h>
using namespace std;
string two(int n){ //进行二进制转换 string a = "";do{char c = n % 2 + '0';a += c;n = n / 2;}while(n!=0);if(a.length() < 8){ //不满八位进行补0 for(int i = a.length();i < 8;i++){a+='0';}}reverse(a.begin(),a.end());return a;
}
int cmp(string a,string b,string c){ //计算掩码 for(int i = 0;i < 8;i++){if(b[i] != c[i]){ //进行and运算 c[i] = '0';}if(b[i] != a[i]){a[i] = '0';}}return a == c ? 1 : 0; //比较子码 判断是否在一子网
}
int main(){int a1,a2,a3,a4;int b1,b2,b3,b4;scanf("%d.%d.%d.%d",&a1,&a2,&a3,&a4);scanf("%d.%d.%d.%d",&b1,&b2,&b3,&b4);string str1 = two(a1);string str2 = two(a2);string str3 = two(a3);string str4 = two(a4);string str5 = two(b1);string str6 = two(b2);string str7 = two(b3);string str8 = two(b4);int n;cin>>n;for(int i = 0;i < n;i++){int c1,c2,c3,c4;scanf("%d.%d.%d.%d",&c1,&c2,&c3,&c4);string cstr1 = two(c1);string cstr2 = two(c2);string cstr3 = two(c3);string cstr4 = two(c4);if(cmp(str1,str5,cstr1)&&cmp(str2,str6,cstr2)&&cmp(str3,str7,cstr3)&&cmp(str4,str8,cstr4)) printf("INNER\n");else printf("OUTER\n");}}

算法训练 子网掩码(25分)c++实现相关推荐

  1. 寒假算法训练1-J(分棍子,求最长棍子的数量,另外学习map的排序方法)

    有一根粗细均匀长度为 LL 的木棍,先用红颜色刻度线将它 m 等分,再用蓝色刻度线将其 n 等分(m>n),然后按所有刻度线将该木棍锯成小段,计算并输出长度最长的木棍的长度和棍数. 例如:木棍长 ...

  2. java 蓝桥杯算法训练 猴子分苹果(题解)

    试题 算法训练 猴子分苹果 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分.这些猴子很崇拜猴王孙悟空,所以都想给他留一些 ...

  3. 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分)

    文章目录 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分) 一.题目 二.题解 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分) 一.题目 二.题解 我这个做法 ...

  4. 一起开心2020蓝桥寒假训练(二)7-6 彩虹瓶 (25分)用到栈,队列

    一起开心2020蓝桥寒假训练(二)7-6 彩虹瓶 (25分) 彩虹瓶的制作过程(并不)是这样的:先把一大批空瓶铺放在装填场地上,然后按照一定的顺序将每种颜色的小球均匀撒到这批瓶子里. 假设彩虹瓶里要按 ...

  5. 试题 算法训练 猴子分苹果

    试题 算法训练 猴子分苹果 题目描述: 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分.这些猴子很崇拜猴王孙悟空,所以都 ...

  6. 蓝桥杯 ALGO-121 算法训练 猴子分苹果

    算法训练 猴子分苹果 时间限制:1.0s   内存限制:256.0MB 问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分.这些猴子很崇拜猴王孙悟空,所以都想给他留一些苹果.第一只 ...

  7. 题353.2022暑期天梯赛训练-7-10 银行排队问题之单队列多窗口服务 (25 分)

    文章目录 题353.2022暑期天梯赛训练-7-10 银行排队问题之单队列多窗口服务 (25 分) 题目: 输入格式: 输出格式: 输入样例: 输出样例: **思路** **代码** 题353.202 ...

  8. 算法训练 猴子分苹果 C/C++

    算法训练 猴子分苹果 问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分.这些猴子很崇拜猴王孙悟空,所以都想给他留一些苹果.第一只猴子悄悄来到山洞,把苹果平均分成n份,把剩下的m个 ...

  9. 蓝桥杯 算法训练 猴子分苹果

    算法训练 猴子分苹果   时间限制:1.0s   内存限制:256.0MB      问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分.这些猴子很崇拜猴王孙悟空,所以都想给他留一 ...

最新文章

  1. 强烈推荐8个良心好用的国产软件应用,让你爱不释手
  2. zzz KVC/KVO原理详解及编程指南
  3. 最简化Selenium环境安装
  4. Codeforces Round #636 (Div. 3)(ABC)
  5. 直接插入排序(Straight Insertion Sort)
  6. 活动目录应用篇一:使用windows server 2008 backup备份AD是的账户权限问题
  7. yii2 html编辑器,浅析Yii2集成富文本编辑器redactor实例教程
  8. 微信也QQ服务器,妄想山海QQ区还是微信区好 平民服务器选择推荐
  9. 面试官:都说阻塞 I/O 模型将会使线程休眠,为什么 Java 线程状态却是 RUNNABLE?
  10. 步进电机驱动实验(89C51 + KEIL + Proteus)
  11. 小米Redmi Airdots无线蓝牙耳机无法串联问题解决
  12. Transformer综述(A Survey on Vision Transformer) 阅读学习笔记(二)-- transformer在计算机视觉领域的发展和应用
  13. 23位子网掩码是多少_子网掩码划分
  14. html校验邮箱格式,正则验证邮箱格式
  15. JSP七动作---<jsp:setProperty>
  16. STC12C5A60S2最小系统
  17. 虚拟机域渗透环境搭建
  18. RFSoC应用笔记 - RF数据转换器 -04- RFSoC关键配置之RF-ADC内部解析(二)
  19. 手机那点事!已有高人把常见的不常见的坑都给找出来了,我就随便转一下了
  20. 首席商学院新媒体运营黎想:抖音直播入门教学,点这!

热门文章

  1. 基于kaggle数据集的猫狗识别(超详细版本)
  2. zabbix监控Web界面
  3. 公钥密码学中的公钥和私钥
  4. 强化学习在智能交通灯中的应用
  5. 25匹马赛跑,有一个赛场,只有五个赛道,没有计时器,只能通过目测来记录快慢,求出第三3快的马要多少场比赛?
  6. iOS一行代码让你的应用中UIScrollView的滑动与侧滑返回并存
  7. Sublime Text3 + LiveReload + Chrome 使编写的HTML同步预览!
  8. 结合opencv学习DIP
  9. 如何学习数据库(新手必看)!
  10. 【nssm将exe封装成服务】