关注
更正后的代码: #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
相关推荐
点赞 评论 收藏
分享
05-07 09:53
未填写教育信息 嵌入式工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 考研对你找工作产生了哪些影响? #
6145次浏览 70人参与
# 打杂的实习你会去吗? #
109090次浏览 954人参与
# 聊聊这家公司值得去吗 #
240588次浏览 2244人参与
# 机械只有读研才有出路吗? #
20030次浏览 228人参与
# 你认为哪个岗位找工作最卷 #
17190次浏览 67人参与
# 面试被问第一学历差时该怎么回答 #
130937次浏览 823人参与
# 远程面试的尴尬瞬间 #
101156次浏览 830人参与
# 硬件人绝对不能踩的坑 #
61503次浏览 736人参与
# 工作中哪个瞬间让你想离职 #
24288次浏览 166人参与
# kpi面有什么特征 #
36432次浏览 266人参与
# 你有哪些缓解焦虑的方法? #
4142次浏览 146人参与
# 如何缓解入职前的焦虑 #
187463次浏览 1319人参与
# 职场人,说说你的烦心事 #
9167次浏览 83人参与
# 秋招最大的收获是什么? #
34317次浏览 302人参与
# 实习生应该准时下班吗 #
223675次浏览 1398人参与
# 职场上哪些事情令人讨厌 #
16986次浏览 86人参与
# 你今年的平均薪资是多少? #
126882次浏览 661人参与
# 为了找工作你投递了多少公司? #
12739次浏览 180人参与
# 运营/市场营销人的秋招现状 #
17373次浏览 189人参与
# 数字马力求职进展汇总 #
175438次浏览 1470人参与