关注
更正后的代码: #include<iostream> #include<string> #include<sstream> #include<vector> using namespace std; bool judge_ip(string ip) { int j = 0; istringstream iss(ip); string seg; while (getline(iss, seg, '.')) if (++j > 4 || seg.empty() || stoi(seg) > 255) return false; return j == 4; } bool is_private(string ip) { istringstream iss(ip); string seg; vector<int> v; while (getline(iss, seg, '.')) v.push_back(stoi(seg)); if (v[0] == 10) return true; if (v[0] == 172 && (v[1] >= 16 && v[1] <= 31)) return true; if (v[0] == 192 && v[1] == 168) return true; return false; } bool is_mask(string ip) { istringstream iss(ip); string seg; unsigned b = 0; while (getline(iss, seg, '.')) b = (b << 8) + stoi(seg); if (!b) return false; b = ~b + 1; if (b == 1) return false; if ((b & (b - 1)) == 0) return true; return false; } int main() { string input; int a = 0, b = 0, c = 0, d = 0, e = 0, err = 0, p = 0; while (cin >> input) { istringstream is(input); string add; vector<string> v; while (getline(is, add, '~')) v.push_back(add); int first = stoi(v[0].substr(0, v[0].find_first_of('.'))); if (first != 127 && (!judge_ip(v[1]) || !is_mask(v[1]))) err++; else { if (!judge_ip(v[0])) err++; else { if (is_private(v[0])) p++; if (first > 0 && first < 127) a++; else if (first > 127 && first < 192) b++; else if (first > 191 && first < 224) c++; else if (first > 223 && first < 240) d++; else if (first > 239 && first < 256) e++; } } } cout << a << " " << b << " " << c << " " << d << " " << e << " " << err << " " << p << endl; return 0; }</string></int></vector></sstream></string></iostream>
2
相关推荐
点赞 评论 收藏
分享
果咩纳塞牛:因为我深深地知道如果拿到了这个offer,后续的秋招真的是不同的世界不同的道路,真的很多事情会不一样,可惜的是没有如果。 点赞 评论 收藏
分享
12-17 17:15
华东师范大学 运营 点赞 评论 收藏
分享
11-12 13:06
东华理工大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
171608次浏览 2900人参与
# 找工作,行业重要还是岗位重要? #
85191次浏览 1687人参与
# 职场上哪些行为很加分? #
306651次浏览 3450人参与
# 大家每天通勤多久? #
69573次浏览 441人参与
# 实习的内耗时刻 #
210977次浏览 1538人参与
# 你面试体验感最差/最好的公司 #
16944次浏览 281人参与
# 一人说一个提前实习的好处 #
10140次浏览 201人参与
# 今年你最想重开的一场面试是? #
3807次浏览 67人参与
# 秋招落幕,你是He or Be #
10973次浏览 225人参与
# 互联网行业现在还值得去吗 #
46863次浏览 351人参与
# 实习没事做是福还是祸? #
16308次浏览 251人参与
# 面试吐槽bot #
164954次浏览 814人参与
# 重来一次,你会对开始求职的自己说 #
5806次浏览 143人参与
# 反问环节如何提问 #
126340次浏览 2663人参与
# 礼物开箱Plog #
633次浏览 24人参与
# 工作中听到最受打击的一句话 #
6271次浏览 109人参与
# 团建是“福利”还是是 “渡劫” #
6932次浏览 147人参与
# 我的第一份实习怎么找的 #
208492次浏览 1827人参与
# 比亚迪工作体验 #
74526次浏览 281人参与
# 大家实习每天都在干啥 #
106453次浏览 580人参与

