2024团体设计天梯赛之L1-101 别再来这么多猫娘了

news2024/12/27 10:20:07

9efbcbc3d25747719da38c01b3fa9b4f.gif

 c语言中的小小白-CSDN博客c语言中的小小白关注算法,c++,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm=1001.2014.3001.5343

给大家分享一句我很喜欢我话:

知不足而奋进,望远山而前行!!!

铁铁们,成功的路上必然是孤独且艰难的,但是我们不可以放弃,远山就在前方,但我们能力仍然不足,所有我们更要奋进前行!!!

今天我们更新了猫娘内容,

🎉 欢迎大家关注🔍点赞👍收藏⭐️留言📝

题目介绍:

首先我们来看一下这道题的题目内容:

 

这就是这个题的题目,在满足违禁词不超过阈值的情况下,将违禁词全部替换成<censored>,但这种情况下我们需要考虑,如过这个<censored>是违禁词怎么办,我们如果在找的过程中就替换的话会出现重复替换的情况,这样会造成超时或者其他的一些影响,所以这里我们应该用一些特殊的符号先来代替这个违禁词,后续再将违禁词更换为<censored>。再一种情况就是如果大于等于违禁词,就要输出个数与那句话,所以同时我们还要记录着违禁词的个数

下面我们来看一下代码吧:

本题代码:

C++版本

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int n, m;
string s, S[110];

int main()
{
	cin >> n;
	cin.ignore();

	for (int i = 0; i < n; i++)getline(cin, S[i]);

	cin >> m;
	if (m == 0) cout << 0 << endl << "He Xie Ni Quan Jia!"; 
	else
	{
		cin.ignore();
		int cnt = 0;
		getline(cin, s);
		for (int i = 0; i < n; i++)
		{
			 
			while (s.find(S[i]) != -1)
			{
				int pos = s.find(S[i]);
				cnt++;
				s.erase(pos, S[i].length());
				s.insert(pos, "^-^");
			}
		}
		if (cnt >= m) cout << cnt << endl << "He Xie Ni Quan Jia!";
		else
		{
			// 找出违禁词的位置然后替换
			while (s.find("^-^") != -1)
			{
				int t = s.find("^-^");
				s.erase(t, 3);
				s.insert(t, "<censored>");
			}
			cout << s;
		}
	}
	return 0;
}
#include <iostream>
#include <vector>
#include <string>
using namespace std;

int n, m;
string s, S[110];

int main()
{
	cin >> n;
	cin.ignore();

	for (int i = 0; i < n; i++)getline(cin, S[i]);

	cin >> m;
	if (m == 0) cout << 0 << endl << "He Xie Ni Quan Jia!"; 
	else
	{
		cin.ignore();
		int cnt = 0;
		getline(cin, s);
		for (int i = 0; i < n; i++)
		{
			 
			while (s.find(S[i]) != -1)
			{
				int pos = s.find(S[i]);
				cnt++;
				s.erase(pos, S[i].length());
				s.insert(pos, "^-^");
			}
		}
		if (cnt >= m) cout << cnt << endl << "He Xie Ni Quan Jia!";
		else
		{
			// 找出违禁词的位置然后替换
			while (s.find("^-^") != -1)
			{
				int t = s.find("^-^");
				s.erase(t, 3);
				s.insert(t, "<censored>");
			}
			cout << s;
		}
	}
	return 0;
}

C语言版本:

#include <stdio.h>
#include <string.h>

#define MAX_WORDS 110
#define MAX_LENGTH 1000

int n, m;
char s[MAX_LENGTH];
char S[MAX_WORDS][MAX_LENGTH];

void replaceSubstring(char *str, const char *sub, const char *replace) {
    char temp[MAX_LENGTH];
    char *p;

    while ((p = strstr(str, sub)) != NULL) {
        strcpy(temp, p + strlen(sub));
        *p = '\0';
        strcat(str, replace);
        strcat(str, temp);
    }
}

int main() {
    scanf("%d", &n);
    getchar(); // Consume the newline character after n

    for (int i = 0; i < n; i++) {
        fgets(S[i], MAX_LENGTH, stdin);
        strtok(S[i], "\n"); // Remove newline character from the end
    }

    scanf("%d", &m);
    getchar(); // Consume the newline character after m

    if (m == 0) {
        printf("0\nHe Xie Ni Quan Jia!\n");
    } else {
        fgets(s, MAX_LENGTH, stdin);
        strtok(s, "\n"); // Remove newline character from the end

        int cnt = 0;
        for (int i = 0; i < n; i++) {
            char *pos = s;
            while ((pos = strstr(pos, S[i])) != NULL) {
                cnt++;
                replaceSubstring(s, S[i], "^-^");
                pos += strlen("^-^");
            }
        }

        if (cnt >= m) {
            printf("%d\nHe Xie Ni Quan Jia!\n", cnt);
        } else {
            replaceSubstring(s, "^-^", "<censored>");
            printf("%s\n", s);
        }
    }

    return 0;
}#include <stdio.h>
#include <string.h>

#define MAX_WORDS 110
#define MAX_LENGTH 1000

int n, m;
char s[MAX_LENGTH];
char S[MAX_WORDS][MAX_LENGTH];

void replaceSubstring(char *str, const char *sub, const char *replace) {
    char temp[MAX_LENGTH];
    char *p;

    while ((p = strstr(str, sub)) != NULL) {
        strcpy(temp, p + strlen(sub));
        *p = '\0';
        strcat(str, replace);
        strcat(str, temp);
    }
}

int main() {
    scanf("%d", &n);
    getchar(); // Consume the newline character after n

    for (int i = 0; i < n; i++) {
        fgets(S[i], MAX_LENGTH, stdin);
        strtok(S[i], "\n"); // Remove newline character from the end
    }

    scanf("%d", &m);
    getchar(); // Consume the newline character after m

    if (m == 0) {
        printf("0\nHe Xie Ni Quan Jia!\n");
    } else {
        fgets(s, MAX_LENGTH, stdin);
        strtok(s, "\n"); // Remove newline character from the end

        int cnt = 0;
        for (int i = 0; i < n; i++) {
            char *pos = s;
            while ((pos = strstr(pos, S[i])) != NULL) {
                cnt++;
                replaceSubstring(s, S[i], "^-^");
                pos += strlen("^-^");
            }
        }

        if (cnt >= m) {
            printf("%d\nHe Xie Ni Quan Jia!\n", cnt);
        } else {
            replaceSubstring(s, "^-^", "<censored>");
            printf("%s\n", s);
        }
    }

    return 0;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1614155.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

上市公司数字化转型速度测-含代码及原始数据(2000-2022年)

数据来源&#xff1a;Wind数据库、企业年报时间跨度&#xff1a;2000-2022年 其中吴非、赵宸宇版本的数据是从2000到2022年&#xff1b;袁淳版本和李瑛玫版本的数据均是从2001-2022年。数据范围&#xff1a;上市公司数据指标&#xff1a;计算了三份测算数字化转型速度的数据。其…

Java中的构造器

即使在类中什么都不写也会自动的生成一个构造器 注意 使用new关键字是在调用构造器 如果定义了有参构造 那么就不会默认的走Person person new Person();如果没有自己手动的定义无参构造就不能使用 在idea中 用按键Altinsert可以快速生成有参、无参构造&#xff08;某些品牌的…

yolov8-obb旋转目标检测详细流程

一、数据标注 由于旋转目标标注与传统的目标检测标注有一定的区别&#xff0c;故使用roLabelImg或者labelimg2进行标注&#xff0c;以下标注软件选用的是roLabelImg。 roLabelImg下载地址&#xff1a;https://github.com/cgvict/roLabelImg 直接在原有的labelimg环境中使用roL…

宝塔面板国际版aaPanel 精简版安装

宝塔面板国际版aaPanel 精简版安装 很多人都知道宝塔面板&#xff0c;但不知道宝塔面板还有英文版&#xff0c;宝塔面板英文版不是单纯的宝塔面板的翻译&#xff0c;而是根据老外的使用习惯及国外的网络环境做了一定的优化&#xff0c; 比如&#xff1a;去掉了手机号验证、去…

关于淘宝API接口请求数据的靠谱方式,主要包括以下几个方面:

关于淘宝API接口请求数据的靠谱方式&#xff0c;主要包括以下几个方面&#xff1a; 了解API接口和请求方式&#xff1a; API接口采用通用的HTTP协议&#xff0c;支持GET、POST等多种请求方式。GET方法主要用于向指定资源发出请求并返回实体主体内容&#xff0c;如查询、菜单列…

PBR相关基础知识

文章目录 **核心理念****关键组件与参数****工作流程****优势****挑战与注意事项**实例展示 基于物理的渲染&#xff08;Physically Based Rendering, PBR&#xff09;是一种现代计算机图形学技术&#xff0c;它致力于通过模拟真实世界中光与物质相互作用的物理规律来生成高度逼…

JAVA学习笔记30(线程)

1.线程 1.线程的概念 1.线程是由进程创建的&#xff0c;是进程的一个实体 2.一个进程可以拥有多个线程 2.并发 ​ *同一时刻&#xff0c;多个任务交替执行&#xff0c;造成一种"貌似同时"的错觉&#xff0c;单核cpu实现的多任务就是并发 3.并行 ​ *同一时刻&…

Python的round与Excel的round不一样?

Python四舍五入怎么做 round()奇进偶舍round函数既不是“四舍五入”的原则&#xff0c;也不是“四舍六入无成双”的原则。 decimal round() 偶然发现python的round函数和excel的round函数对某些数据的处理结果不一致。有看到博主提到是奇进偶舍的方法&#xff0c;但经过验证和…

elementUi 日期选择器 组件禁止手输

添加:editable"false" <el-date-pickerv-model"formInline.EndTime"type"datetime"placeholder"选择结束时间"format"YYYY-MM-DD HH:mm:ss"value-format"YYYY-MM-DD HH:mm:ss":editable"false">&…

0 transformers入门,HuggingFace!

目录 1 了解 2 文本分类 1 了解 1 依赖安装 !pip install transformers -i https://pypi.tuna.tsinghua.edu.cn/simple some-package 2 了解transformers 能做什么 from transformers.pipelines import SUPPORTED_TASKS SUPPORTED_TASKS.items()2 文本分类 我没外网所以…

[2024更新]如何从Android恢复已删除的相机照片?

相信大家都经历过Android手机误删相机图片的经历。您是否正在寻找一种可行的方法来挽救这些丢失的照片&#xff1f;如果这是你迫切想解决的问题&#xff0c;那么这篇文章绝对可以帮助你。然而&#xff0c;与其考虑如何从Android恢复已删除的相机照片&#xff0c;我们更愿意建议…

3D模型人物换装系统(五 模型核批之后模型uv不正确)模型UV不正确

3D模型人物换装系统&#xff08;五 模型核批之后模型uv不正确&#xff09;模型UV不正确 介绍展示Maya导入查看uvUnity中测试分析没合批为什么没有问题总结 介绍 最近在公司里给公司做模型优化合批的时候发现了模型的uv在合批之后无法正常展示&#xff0c;这里找了很多的原因&a…

【竞技宝】中超:泰山队4比1大胜沧州雄狮,费南多独造三球

泰山队在本轮中超主场跟沧州雄狮相遇,这场比赛开打前球迷都觉得主队不好踢。因为,沧州雄狮是中超大黑马,整体战绩可圈可点。另外,泰山队则是境遇不佳,主帅崔康熙饱受球队伤病不断的困扰。最让山东球迷觉得郁闷的是崔康熙上一轮因质疑马宁吹罚,还直接罚到了看台。这就意味着崔康…

2024.4.21周报

目录 摘要 Abstract 文献阅读&#xff1a;Next Item Recommendation with Self-Attentive Metric Learning 问题及方法 论文贡献 方法论 序列感知的推荐系统 神经注意模型 模型&#xff1a;ATTREC 序列推荐 基于Self-Attention的用户短期兴趣建模 用户长期兴趣建模…

MySQL修改数据表的结构

创建数据库 -- create database 创建的数据库名; create database test; 这里创建了一个名为 test 的数据库 选择需要使用的数据库 -- use 数据库名; use test; 这里使用 test 数据库 创建数据表 -- create table 表名(字段名1 数据类型(长度) 约束,字段名2 数据类型(长…

Centos7 的 Open Stack T 版搭建流程 --- (三)配置消息队列

配置消息队列 文章目录 配置消息队列&#xff08;1&#xff09;安装 RabbitMQ 服务并配置新用户权限controller &#xff08;2&#xff09;如何开启图形化&#xff08;拓展&#xff09; &#xff08;1&#xff09;安装 RabbitMQ 服务并配置新用户权限 controller yum install…

开源事件通知库libevent及网络连接管理模块bufferevent详解

目录 1、libevent介绍 1.1、什么是libevent&#xff1f; 1.2、libevent特点 1.3、网络连接管理模块bufferevent 2、bufferevent有什么用&#xff1f; 3、bufferevent的整体设计与实现细节 3.1、整体概况 3.2、evbuffer与bufferevent 3.3、defer callback 4、bufferev…

LLM学习笔记-2

在未标记数据上进行预训练 本章概要 在上节的笔记中&#xff0c;因为训练出的效果&#xff0c;并不是特别理想&#xff0c;在本节中&#xff0c;会用数据进行训练&#xff0c;使得模型更加的好&#xff1b; 计算文本生成损失 inputs torch.tensor([[16833, 3626, 6100],…

知攻善防应急靶场-Windows(Web1-2-3)

知攻善防应急靶场-Web1 1.要求 2.过程 直接扫网站根目录 发现后门 <?php error_reporting(0); session_start();$key"e45e329feb5d925b"; //该密钥为连接密码32位md5值的前16位&#xff0c;默认连接密码rebeyond$_SESSION[k]$key;session_write_close();$postf…

集成学习-Bagging与随机森林回归

reg_fRFR() reg_tDTR()#实例化决策树 cvKFold(n_splits5,shuffleTrue,random_state1412)#实例化验证方式 result_tcross_validate(reg_t#要进行交叉验证的评估器,X,y,cvcv,scoringneg_mean_squared_error#评估指标,return_train_scoreTrue#是否返回训练分数&#xff0c;后面这几…