给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。 其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如: 192.15.0.2 192.16.1.5 beijing 168.3.4.5 168.3.6.8 shanghai 177.2.3.4 177.4.5.6 chongqing 映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。 如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。
区块链毕设网qklbishe.com为您提供问题的解答
给定IP段到城市的映射表:【起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。
其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如:
192.15.0.2 192.16.1.5 beijing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。
如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。
#include <bits/stdc++.h> using namespace std; struct IpRange { unsigned int low; unsigned int height; string address; bool operator< (const IpRange& range) const { return low < range.low; } }; int main() { int n,a,b,c,d; string ip_address; cin >> n; set<IpRange> s; for(int i = 0;i < n;i++) { IpRange range; scanf("%d.%d.%d.%d", &a,&b,&c,&d); range.low = (a << 24) + (b << 16) + (c << 8) + d; scanf("%d.%d.%d.%d", &a,&b,&c,&d); range.height = (a << 24) + (b << 16) + (c << 8) + d; cin >> ip_address; range.address = ip_address; s.insert(range); } while(~scanf("%d.%d.%d.%d", &a,&b,&c,&d)) { unsigned int tmp = (a << 24) + (b << 16) + (c << 8) + d; bool find = false; for(auto it = s.begin();it != s.end();it++) { if(it->low <= tmp && it->height >= tmp) { cout << it->address << endl; find = true; break; } } if(!find) { cout << "none" << endl; } } return 0; }
46:20
以上就是关于问题给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。
其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如:
192.15.0.2 192.16.1.5 beijing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。
如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训
从业7年-专注一级市场
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。
其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如:
192.15.0.2 192.16.1.5 beijing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。
如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。
其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如:
192.15.0.2 192.16.1.5 beijing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。
如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。
其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如:
192.15.0.2 192.16.1.5 beijing
168.3.4.5 168.3.6.8 shanghai
177.2.3.4 177.4.5.6 chongqing
映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。
如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 给定IP段到城市的映射表:【 起始IP地址,终止IP地址,城市名】,根据给定的IP查询该IP对应的城市名。 其中IP以IPV4的方式给定,例如:10.12.1.3,城市名为一串英文字符,字符间没有空格。例如: 192.15.0.2 192.16.1.5 beijing 168.3.4.5 168.3.6.8 shanghai 177.2.3.4 177.4.5.6 chongqing 映射表中,不同城市的IP地址不重叠,即:不会出现某个城市的起始IP地址小于另一个城市的终止IP地址的情况;一个城市可能有多个IP段(起始IP地址 + 终止IP地址);可能存在某个IP地址范围没有对应的城市信息。 如果要查询的IP地址属于某个城市,那么输出该城市的名字;如果IP地址不属于任何一个城市,那么输出字符串:none。