牛客网--整数与IP地址间的转换
题目描述
原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成
一个长整数。
举例:一个ip地址为10.0.3.193
每段数字 相对应的二进制数
10 00001010
0 00000000
3 00000011
193 11000001
组合起来即为:00001010 00000000 00000011 11000001,转换为10进制数就是:167773121,即该IP地址转换后的数字就是它了。
的每段可以看成是一个0-255的整数,需要对IP地址进行校验
输入描述:
输入
1 输入IP地址
2 输入10进制型的IP地址
输出描述:
输出
1 输出转换成10进制的IP地址
2 输出转换后的IP地址
示例1
输入
复制
10.0.3.193 167969729
输出
复制
167773121 10.3.3.193
代码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line1 = null;
String line2 = null;
while ((line1 = br.readLine()) != null && (line2 = br.readLine()) != null) {
String[] IP1 = line1.split("\\.");
long IP2 = Long.parseLong(line2);
System.out.println(Long.parseLong(IP1[0]) << 24 | Long.parseLong(IP1[1]) << 16 |
Long.parseLong(IP1[2]) << 8 | Long.parseLong(IP1[3]));
StringBuilder sb = new StringBuilder();
sb.append(String.valueOf((IP2 >> 24) & 255)).append(".").append(String.valueOf((IP2 >> 16) & 255))
.append(".").append(String.valueOf((IP2 >> 8) & 255)).append(".").append(String.valueOf(IP2 & 255));
System.out.println(sb.toString());
}
}
}
牛客网--整数与IP地址间的转换相关推荐
- C练题笔记之:牛客-HJ033.整数与IP地址间的转换
题目: 描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数. 举例:一个ip地址为10.0.3.193 每段数字 ...
- 华为机考攻略(python)--字符串操作【9题】(第四题*HJ33整数与IP地址间的转换)
系列文章目录 文章目录 系列文章目录 前言 一.*HJ33整数与IP地址间的转换 二.sound code 总结 前言 一.*HJ33整数与IP地址间的转换 描述: 原理:ip地址的每段可以看成是一个 ...
- 华为OJ——整数与IP地址间的转换
题目描述 原理: ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数. 举例: 一个ip地址为10.0.3.193 每段数字 相对应的 ...
- 华为机试HJ33:整数与IP地址间的转换
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起 ...
- 整数与IP地址间的转换Python
data = input().split(".") #IP地址转整数 a = [] b = '' caozuo = [a.append(bin(int(i))[2:].rjust( ...
- 牛客题霸 [ 验证IP地址] C++题解/答案
牛客题霸 [ 验证IP地址] C++题解/答案 题目描述 编写一个函数来验证输入的字符串是否是有效的 IPv4 或 IPv6 地址 IPv4 地址由十进制数和点来表示,每个地址包含4个十进制数,其范围 ...
- 牛客网刷题—— 计算日期到天数转换
目录 一.描述 输入描述: 输出描述: 二.思路: 三.代码实现 点击下方链接开始做本题: 开始做题 一.描述 根据输入的日期,计算是这一年的第几天. 保证年份为4位数且日期合法. 进阶:时间复杂度: ...
- 华为机试在线训练--牛客网(python)第四部分
华为机试在线训练–牛客网(python) 第四部分(31~40) 第三十一题:[中级]单词倒排 题目描述 对字符串中的所有单词进行倒排. 说明: 1.每个单词是以26个大写或小写英文字母构成: 2.非 ...
- 「解析」牛客网-华为机考企业真题 21-40
又是一年春招时,有幸收到华为自动驾驶算法岗,之前刷题不多,在此汇总下牛客网的真题,主要采用Python编写,个人觉得语言只是实现工具而已,并不是很关键,Python简洁易懂,更加适合算法工程师快速验证 ...
最新文章
- seaborn系列 (14) | 条形图barplot()
- oracle数据同步实例
- 还在埋头写论文?知网检索的这些小技巧让你有如神助!
- weblogic服务器启动报错
- python svg转png_Python实现批量把SVG格式转成png、pdf格式的代码分
- Java压缩技术(二) ZIP压缩——Java原生实现
- DataGridView中的CheckBox
- mysql聚合索引创建_为 MySQL 查询优化选择最佳索引
- ssh框架http后台乱码问题
- 笨办法学 Python · 续 第一部分:预备知识
- 杭电1028Ignatius and the Princess III
- asBroadcastStream
- ADS系列之SIPI仿真笔记:ADS多种版本的安装、卸载重装(一)
- 四川信息职业技术学院计算机多媒体技术,成都市计算机多媒体技术最好学校在哪...
- 1817735-45-7,Carboxy-PEG2-sulfonic acid在EDC和HATU等活化剂存在下,末端羧酸可参与与伯胺的反应
- reactos回顾总结(一)reactos源码编译
- Vue前端实现微信扫码登录
- 一起学Python吧~re正则+MySQL
- 开心移动企业管理平台SaaS OA
- 任正非的《北国之春》(zz.is2120)
热门文章
- LeetCode 1450. 在既定时间做作业的学生人数
- LeetCode 869. 重新排序得到 2 的幂(排序 全排列)
- 【机器学习】分类算法sklearn-朴素贝叶斯算法
- vue warning如何去掉_详解 vue 组件三大核心概念
- python list存储对象_《python解释器源码剖析》第4章--python中的list对象
- 什么是document对象?如何获取文档对象上的元素?_dom对象
- websocket 带头部信息请求 header_关于websocket跨域的一个奇怪问题
- NeurIPS'20 | 通过文本压缩,让BERT支持长文本
- 连载 | 知识图谱发展报告 2018 -- 前言
- KnowledgeGraph Slides项目(CCKS系列报告2013-2018)