华为机试HJ90:合法IP

简介: 华为机试HJ90:合法IP

题目描述:

现在IPV4下用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此不需要用正号出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。


现在需要你用程序来判断IP是否合法。


注意本题有多组样例输入。


输入描述:

输入一个ip地址,保证是xx.xx.xx.xx的形式(xx为整数)

输出描述:

返回判断的结果YES or NO

示例:

输入:

10.138.15.1

255.0.0.255

255.255.255.1000


输出:

YES

YES

NO

解题思路:

这题是字符串分析题。截取字符串IP的四个数字,并判断其是否符合数值合理区间即可。

测试代码:

#include <iostream>
#include <string>
#include <bitset>
#include <vector>
using namespace std;
string analyze(string str)
{
    string temp;
    int k=0;
    for(int i=0;i<str.size();++i)
    {
        if(str[i]=='.')
        {
            temp=str.substr(k,i-k);
            k=i+1;
            int t=stoi(temp);
            if(t<0||t>255)
                return "NO";
        }
    }
    temp=str.substr(k,str.size()-k);
    int t=stoi(temp);
    if(t<0||t>255)
        return "NO";
    return "YES";
}
int main()
{
    string str;
    while(getline(cin,str))
    {
        cout<<analyze(str)<<endl;
    }
    return 0;
}


相关文章
|
12月前
|
网络协议 算法 中间件
【总结】单片机重点知识总结记录之CMSIS详解(六)
【总结】单片机重点知识总结记录之CMSIS详解(六)
925 0
|
12月前
|
数据库连接 C++
什么是RAII原则
【10月更文挑战第19天】什么是RAII原则
395 1
|
程序员 Windows
程序员必备文件搜索工具 Everything 带安装包!!! 比windows自带的文件搜索快几百倍!!! 超级好用的文件搜索工具,仅几兆,不占内存,打开即用
文章推荐了程序员必备的文件搜索工具Everything,并提供了安装包下载链接,强调其比Windows自带搜索快且占用内存少。
285 0
|
人工智能 安全 PHP
PHP特性之CTF中常见的PHP绕过
PHP特性之CTF中常见的PHP绕过
1093 1
|
数据安全/隐私保护
RegExp——密码复杂度为数字,小写字母,大写字母,特殊符号 至少包含三种,长度为 8 - 16位
RegExp——密码复杂度为数字,小写字母,大写字母,特殊符号 至少包含三种,长度为 8 - 16位
451 0
|
网络协议 NoSQL Redis
SMC-R 透明加速 TCP 技术,在 Redis 场景下的应用实践 | 干货推荐
SMC-R 作为一套与 TCP/IP 协议平行、向上兼容 socket 接口、底层使用 RDMA 完成共享内存通信的内核协议栈,其设计意图是为 TCP 应用提供透明的 RDMA 服务,同时保留了 TCP/IP 生态系统中的关键功能。
|
消息中间件 程序员 Windows
Windows消息机制《MFC深度详解》
Windows消息机制《MFC深度详解》
335 1
|
网络协议 网络安全 数据安全/隐私保护
内容安全(DPI和DFI解析)
内容安全(DPI和DFI解析)
612 6
|
XML JSON 测试技术
JMeter 响应断言详解:提升测试精度的利器
**摘要:** Apache JMeter的响应断言用于验证性能和功能测试中的系统响应。常见的断言类型包括文本、JSON、XPath、XML、响应代码和时间断言。配置断言涉及添加采样器、选择断言类型及设定相关参数。最佳实践建议选择合适断言类型、减少断言数量、使用正则表达式,并结合前置和后置处理器。实例演示了如何配置文本、JSON和响应代码断言来验证登录接口的成功响应。响应断言确保了测试的准确性与效率。
|
Linux Docker 容器
Redhat离线安装docker
Redhat系统离线安装docker。
548 0