鱼C论坛

 找回密码
 立即注册
123
返回列表 发新帖
楼主: 陈尚涵

洛谷黄题求助

[复制链接]
 楼主| 发表于 2023-7-30 11:21:54 | 显示全部楼层
Ewan-Ahiouy 发表于 2023-7-30 07:33
看题解的时候看到这一条:

我对这个处理了啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:04:03 | 显示全部楼层
想要渔币做作业

评分

参与人数 2鱼币 +10 收起 理由
叼辣条闯世界 + 5 awa
陈尚涵 + 5 还是给你吧

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-7-30 13:04:54 | 显示全部楼层

这个不是有回贴奖励的一些帖子,是求助贴,帮我解决问题才能有奖励
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:19:46 | 显示全部楼层

?不二把我的 17# 给删了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:21:30 | 显示全部楼层
tommyyu 发表于 2023-7-30 13:19
?不二把我的 17# 给删了

占用空间,看着不顺眼

也有可能是侵犯了洛谷的某个权
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:22:27 | 显示全部楼层
本帖最后由 tommyyu 于 2023-7-30 13:23 编辑
zhangjinxuan 发表于 2023-7-30 13:21
占用空间,看着不顺眼吗

也有可能是侵犯了洛谷的某个权


可那是洛谷输入(侵权?)+陈尚涵代码的运行结果啊

我 14# 都没被删(会不会等会就没了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:24:56 | 显示全部楼层
tommyyu 发表于 2023-7-30 13:22
可那是洛谷输入(侵权?)+陈尚涵代码的运行结果啊

我 14# 都没被删

《头脑风暴》

我就不知道了,如果CSP数据不会公开,这个可能是会构成侵权的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:27:47 | 显示全部楼层
zhangjinxuan 发表于 2023-7-30 13:24
《头脑风暴》

我就不知道了,如果CSP数据不会公开,这个可能是会构成侵权的

https://help.luogu.com.cn/ula/luogu

3.6 用户不得侵犯洛谷网的知识产权,只能在自用以及授权范围内使用洛谷提供的洛谷自有知识产权的资源?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:29:32 | 显示全部楼层
tommyyu 发表于 2023-7-30 13:27
https://help.luogu.com.cn/ula/luogu

3.6 用户不得侵犯洛谷网的知识产权,只能在自用以及授权范围内 ...

但是这个是官方数据啊(应该?),如果官方数据公布的话,那么,也不会构成侵权啊。

但是一般情况下第三人不会管这么多,可能就是因为太长了看着不顺眼就删了,影响他人阅读体验(?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 13:32:38 | 显示全部楼层
zhangjinxuan 发表于 2023-7-30 13:29
但是这个是官方数据啊(应该?),如果官方数据公布的话,那么,也不会构成侵权啊。

但是一般情况下第 ...

有可能

本来在这里我还想提交代码的,奈何回复有字数限制
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 20:34:52 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-7-30 20:36:45 | 显示全部楼层
tommyyu 发表于 2023-7-30 13:19
?不二把我的 17# 给删了

为什么你们说话我没有提醒啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-30 20:46:21 | 显示全部楼层
陈尚涵 发表于 2023-7-30 20:36
为什么你们说话我没有提醒啊

互相回复帖子,不会给楼主提醒
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-8-3 19:51:44 | 显示全部楼层
这道题用模拟的思路也许真的解不了

建议换种思路,如sscanf函数
#include <bits/stdc++.h>
using namespace std;

int n;
string op, ad;
map <string, int> p;

int ak(string s) {
    long long a, b, c, d, e;
    long long t = sscanf(s.c_str(), "%lld.%lld.%lld.%lld:%lld", &a, &b, &c, &d, &e);
    if (t != 5) return 0;
    if (a < 0 || a > 255 || b < 0 || b > 255 || c < 0 || c > 255 || d < 0 || d > 255 || e < 0 || e > 65535) return 0;
    char s2[35];
    sprintf(s2,"%d.%d.%d.%d:%d",a,b,c,d,e);
    int len = s.size();
    int f = 1;
    for (int i = 0; i < len; i++) {
        if (s[i] == s2[i]) f = 1;
        else {
            f = 0;
            break;
        }
    }
    return f;
}

int main() {
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> op >> ad;
        if (!ak(ad)) {
            cout << "ERR" << endl;
        } else {
            if (op[0] == 'S') {
                if (p[ad] == 0) {
                    cout << "OK" << endl;
                    p[ad] = i + 1;
                } else {
                    cout << "FAIL" << endl;
                }
            } else {
                if (p[ad] == 0) {
                    cout << "FAIL" << endl;
                } else {
                    cout << p[ad] << endl;
                }
            }
        }
    }

    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-8-4 12:03:06 | 显示全部楼层
#include <bits/stdc++.h>
using namespace std;
int n;
bool Check(string s) {
  long long a, b, c, d, port;
  if (sscanf(s.c_str(), "%lld.%lld.%lld.%lld:%lld", &a, &b, &c, &d, &port) != 5)  return false;
  if (a < 0 || a > 255 || b < 0 || b > 255 || c < 0 || c > 255 || d < 0 || d > 255 || port < 0 || port > 65535)  return false;
  stringstream ss;
  ss << a << '.' << b << '.' << c << '.' << d << ':' << port;
  return ss.str() == s;
}
map<string, int> mp;
string op, ad;
int main(int argc, char const *argv[]) {
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> op >> ad;
    if (!Check(ad)) { cout << "ERR\n"; continue; }
    if (op[0] == 'S') {
      if (mp[ad]) cout << "FAIL\n";
      else mp[ad] = i, cout << "OK\n";
    } else {
      if (!mp.count(ad)) cout << "FAIL\n";
      else cout << mp[ad] << '\n';
    }
  }
  return 0;
}

欢迎抄代码,抄完代码惊喜送“作弊者”图标哦~
https://www.luogu.com.cn/problem/solution/P7911 欢迎来到这里进行抄代码。
您只要点击“查看题解”多做几次,惊喜获得“作弊者!!!!!!”
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-7 13:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表