记录编号 |
570856 |
评测结果 |
AAAAAAAAAAAAAAAAAAAA |
题目名称 |
[CSP 2021J]网络连接 |
最终得分 |
100 |
用户昵称 |
lihaoze |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2022-04-20 21:29:51 |
内存使用 |
0.00 MiB |
显示代码纯文本
#include <bits/stdc++.h>
#define OPEN(x) freopen(#x".in", "r", stdin); freopen(#x".out", "w", stdout)
int n;
std::unordered_map<std::string, int> mp;
std::string s[6], str, op;
std::regex r("(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]):(\\d|[1-9]\\d{1,3}|[1-5]\\d{4}|6[0-4]\\d{3}|65[0-4]\\d{2}|655[0-2]\\d|6553[0-5])");
int main() {
OPEN(csp2021pj_network);
scanf("%d", &n);
for (int i = 1; i <= n; ++ i) {
std::cin >> op >> str;
if (!regex_match(str, r)) {
puts("ERR");
continue;
}
if (op[0] == 'S') {
if (mp[str]) puts("FAIL");
else mp[str] = i, puts("OK");
} else {
if (!mp[str]) puts("FAIL");
else printf("%d\n", mp[str]);
}
}
return 0;
}