当前位置: 首页 > news >正文

第6届传智杯复赛第一场

A小红劈字符串

题目链接

题目链接:A-小红劈字符串(B组)_第6届传智杯复赛第一场(补题) (nowcoder.com)


题目描述

小红拿到了一个仅由小写字母组成的字符串,她希望将其分割成两个非空子串,使得第一部分的长度是第二部分的两倍
你需要判断是否存在合法分割方案,若存在则输出分割结果,否则输出 -1

输入输出格式

  • 输入:一个长度不超过 10e5 的字符串。
  • 输出
    • 若存在合法分割,输出两个子串,用空格分隔。
    • 若无解,输出 -1

示例

输入输出说明
abcab c第一部分长度2,第二部分1
ad-1总长度2,无法满足条件

解题思路

数学推导

设字符串总长度为 n,第二部分长度为 k,则第一部分长度需为 2k。
根据题意,总长度满足:

2k+k=n⇒3k=n⇒k=3n​

因此,​合法分割的必要条件是:

  1. n 必须是3的倍数(即 n%3=0)。
  2. 分割后两部分均非空(即 k≥1)。

代码:

#include<bits/stdc++.h>
using namespace std;
#define ll long long  
#define ull unsigned long longvoid solve() {string ssr;cin>>ssr;int n=ssr.length();if(n%3!=0){cout<<-1;return;}else{cout<<ssr.substr(0,n/3*2)<<" "<<ssr.substr(n/3*2,n/3);}
} signed main() {ios::sync_with_stdio(0);cout.tie(0);cin.tie(0);ll t = 1; // std::cin >> t;while (t--) {solve();}
}

 B赝品

题目链接

牛客网竞赛72647-B题
题目链接:https://ac.nowcoder.com/acm/contest/72647/B


题目描述

给定一批商品,每个商品有一个型号。已知真品的型号至少出现两次,而赝品的型号只出现一次。要求找出所有赝品的型号并按升序输出。

输入输出格式

  • 输入
    • 第一行:整数 n 表示商品总数。
    • 第二行:n 个正整数,表示每个商品的型号。
  • 输出
    • 第一行:赝品数量 k
    • 第二行:k 个按升序排列的赝品型号。

示例

输入输出说明
5\n2 5 3 2 22\n3 5真品为2,赝品为3和5
4\n9 9 2 91\n2真品为9,赝品为2

解题思路

核心逻辑

  1. 统计出现次数:遍历所有型号,统计每个型号的出现次数。
  2. 筛选赝品:收集所有出现次数为1的型号。
  3. 排序输出:对赝品型号升序排序后输出。

数学验证

  • 真品出现次数 ≥ 2,赝品出现次数 = 1。
  • 时间复杂度:统计次数需 O(n),排序需 O(klogk),总复杂度为 O(n+klogk)。

代码实现

#include<bits/stdc++.h>
using namespace std;
#define ll long long  
#define ull unsigned long long
bool cmp(int a,int b)
{return a<b;
}
void solve() {map<int,int> ssr;map<int,int> num;int n,m,op=0;cin>>n;int sum[100010];for(int i=1;i<=n;i++){cin>>m;ssr[m]++;if(ssr[m]==1){sum[op]=m;num[m]=op;op++;}else{sum[num[m]]=0;}}sort(sum,sum+op,cmp);int i=0;for(;;i++){if(sum[i]!=0){break;}}cout<<op-i<<endl;for(;i<=op-2;i++){if(sum[i]!=0){cout<<sum[i]<<" ";}}if(sum[op-1]!=0){cout<<sum[op-1];}} signed main() {ios::sync_with_stdio(0);cout.tie(0);cin.tie(0);ll t = 1; // std::cin >> t;while (t--) {solve();}
}

C小红的数字分裂

题目描述

小红有一个整数数组,她可以通过将某个元素 x 拆分为两个整数 a 和 b(满足 a + b = x)来增加数组长度。要求找到使数组中所有元素相等所需的最少操作次数。

输入输出格式

  • 输入
    • 第一行:整数 n 表示数组长度。
    • 第二行:n 个正整数表示数组元素。
  • 输出:最少操作次数。

示例

输入输出说明
2\n2 41将4拆分为2和2,得到[2,2,2]

原代码分析

代码思路

#include <bits/stdc++.h>
using namespace std;void solve() {int sum[100010], n;cin >> n;for (int i = 0; i < n; i++) cin >> sum[i];sort(sum, sum + n);// 从最小值开始枚举可能的公约数for (int i = sum[0]; i >= 1; i--) {if (i == 1) { // 特殊情况处理int total = 0;for (int x : sum) total += x - 1;cout << total;return;}bool valid = true;for (int x : sum) {if (x % i != 0) {valid = false;break;}}if (valid) {int cnt = 0;for (int x : sum) cnt += x / i - 1;cout << cnt;return;}}
}

D红的字符串同构

题目描述

小红定义两个字符串同构,当且仅当对于i∈[1,n],b[i]−a[i]i∈[1,n],b[i]-a[i]i∈[1,n],b[i]−a[i]是定值。例如,"bacd"和"edfg"是同构的。

现在小红拿到了一个长度为nnn的字符串aaa,她想知道,有多少长度为nnn的字符串bbb同时满足以下两个条件:
1.bbb的每一位都和aaa不同。
2.bbb和aaa不同构。

输入描述:

输入一个仅由英文小写字母组成的字符串,代表字符串aaa。
字符串长度不超过10510^5105。

输出描述:

一个整数,代表合法的字符串bbb的数量。由于答案过大,请对109+710^9+7109+7取模。
#include<bits/stdc++.h>
using namespace std;
#define ll long long  
#define ull unsigned long long;
int sum[100010];
ll ans=1e9+7;
ll answer=1;
void solve() {string ssr;cin>>ssr;int n=ssr.length();if(n==1){cout<<0;return;}else{char op1='a';char op2='z';for(int i=0;i<=n-1;i++){if(ssr[i]>op1){op1=ssr[i];}if(ssr[i]<op2){op2=ssr[i];}}int num=(int)('z'-op1)+(int)(op2-'a');for(int i=1;i<=n;i++){answer*=25;answer%=ans;}if(answer>num){answer-=num;}else{answer+=(ans-num);}cout<<answer;}
} signed main() {ios::sync_with_stdio(0);cout.tie(0);cin.tie(0);ll t = 1; // std::cin >> t;while (t--) {solve();}
}

相关文章:

第6届传智杯复赛第一场

A小红劈字符串 题目链接 题目链接&#xff1a;A-小红劈字符串&#xff08;B组&#xff09;_第6届传智杯复赛第一场&#xff08;补题&#xff09; (nowcoder.com) 题目描述 小红拿到了一个仅由小写字母组成的字符串&#xff0c;她希望将其分割成两个非空子串&#xff0c;使得第…...

CSDN博客:Markdown编辑语法教程总结教程(中)

❤个人主页&#xff1a;折枝寄北的博客 Markdown编辑语法教程总结 前言1. 列表1.1 无序列表1.2 有序列表1.3 待办事项列表1.4 自定义列表 2. 图片2.1 直接插入图片2.2 插入带尺寸的图片2.3 插入宽度确定&#xff0c;高度等比例的图片2.4 插入高度确定宽度等比例的图片2.5 插入居…...

Codeforces Round 258 (Div. 2) E. Devu and Flowers 生成函数

题目链接 题目大意 有 n n n ( 1 ≤ n ≤ 20 ) (1\leq n \leq 20) (1≤n≤20) 个花瓶&#xff0c;第 i i i 个花瓶里有 f i f_i fi​ ( 1 ≤ f i ≤ 1 0 12 ) (1\leq f_i \leq 10^{12}) (1≤fi​≤1012) 朵花。现在要选择 s s s ( 1 ≤ s ≤ 1 0 14 ) (1\leq s \leq 1…...

【高并发内存池】释放内存 + 申请和释放总结

高并发内存池 1. 释放内存1.1 thread cache1.2 central cache1.3 page cache 2. 申请和释放剩余补充 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x…...

AutoGen学习笔记系列(九)Advanced - Selector Group Chat

这篇文章瞄的是AutoGen官方教学文档 Advanced 章节中的 Selector Group Chat 篇章&#xff0c;介绍了SelectorGroupChat对象如何从一个Team中选择其中一个Agent与LLM进行对话&#xff0c;并且在得到结果后进行二次规划&#xff0c;同时你也可以自定义选择函数。本质上还是对Tea…...

Stream特性(踩坑):惰性执行、不修改原始数据源

在日常开发中&#xff0c;Stream API 提供了一种高效且易于使用的工具集来处理集合数据。 本文主要讲解 Stream 的两个特性&#xff1a;惰性执行&#xff0c;不修改原始数据源。 为什么说这两个、而不讲下其他的特性呢&#xff1f;主要是因为在开发中如果忽略这两个特性的话&…...

springcloud sentinel教程

‌QPS&#xff08;Queries Per Second&#xff09;即每秒查询率 TPS&#xff0c;每秒处理的事务数目 PV&#xff08;page view&#xff09;即页面浏览量 UV 访问数&#xff08;Unique Visitor&#xff09;指独立访客访问数 一、初识Sentinel 什么是雪崩问题? 微服务之间相…...

像素的一生 Life of a Pixel - Steve Kobes 2020版

像素的一生 Life of a Pixel - Steve Kobes 2020版 《Life of a Pixel》 作者是Google大佬 Steve Kobes 2020年 介绍Chromium内核完整渲染流程的视频&#xff0c;介绍的非常好&#xff0c;想要学习了解chromium内核渲染必看&#xff01; 油管视频地址为&#xff1a;https://w…...

系统部署【信创名录】及其查询地址

一、信创类型 &#xff08;一&#xff09;服务器&#xff1a; 1.华为云 2.腾讯云 3.阿里云 &#xff08;二&#xff09;中央处理器&#xff08;CPU&#xff09;&#xff1a; 1.海思&#xff0c;鲲鹏920服务器 &#xff08;三&#xff09;中间件 1.人大金仓 &#xff0…...

VSCode 配置优化指南:打造高效的 uni-app、Vue2/3、JS/TS 开发环境

VSCode 配置优化指南,适用于 uni-app、Vue2、Vue3、JavaScript、TypeScript 开发,包括插件推荐、设置优化、代码片段、调试配置等,确保你的开发体验更加流畅高效。 1. 安装 VSCode 如果你还未安装 VSCode,可前往 VSCode 官网 下载最新版并安装。 2. 安装推荐插件 (1) Vue…...

C++中的析构函数

目录 一、什么是析构函数&#xff1a; 二、析构函数的特性&#xff1a; 一、什么是析构函数&#xff1a; C中的析构函数非常简单&#xff0c;它的功能无非是帮助我们自动归还堆区的空间给操作系统。当我们使用内存开辟函数&#xff08;如malloc()、realloc()&#xff09;等&a…...

同步,异步,并发,并行

同步: 任务按顺序执行&#xff0c;必须等待前一个任务完成后才能开始下一个任务。 任务之间是强依赖的&#xff0c;通过直接调用或阻塞等待实现。 示例&#xff1a;读取文件时&#xff0c;代码会阻塞直到文件读取完成。 异步&#xff1a; 任务无需等待前一个任务完成即可启…...

种子填充(Floodfill、泛滥填充、洪水填充) 算法c++模板

种子填充(Floodfill) 算法: 从任意 W 开始,不停地把邻接的 W 用 . 代替。1 次 DFS 后与初始 W 连接的所有 W 都被替换成 . 了。 因此,直到图中不存在 W 为止,总共进行 DFS 的次数就是答案了。 问题: 有一个大小为 N x M 的园子,雨后积水。 8 连通的积水被认为是连接在…...

MATLAB控制函数测试要点剖析

一、功能准确性检验 基础功能核验 针对常用控制函数&#xff0c;像用于传递函数建模的 tf 、构建状态空间模型的 ss &#xff0c;以及开展阶跃响应分析的 step 等&#xff0c;必须确认其能精准执行基础操作。以 tf 函数为例&#xff0c;在输入分子与分母系数后&#xff0c;理…...

【新手指南】pyqt可视化远程部署deepseek7B蒸馏版模型

本地效果&#xff1a;&#xff08;如果想做这个的本科毕设&#xff0c;建议美化界面。&#xff09; 总结&#xff1a;MobaXterm远程连接autodl服务器&#xff0c;在MobaXterm上利用X11转发使pyqt可视化页面在自己的电脑上展现出来。 1. 官网下载MobaXterm MobaXterm free Xse…...

大语言模型在患者交互任务中的临床使用评估框架

An evaluation framework for clinical use of large language models in patient interaction tasks An evaluation framework for clinical use of large language models in patient interaction tasks | Nature Medicine 2025.1 收到时间&#xff1a;2023 年 8 月 8 日 …...

DeepSeek-V3 技术报告解读

DeepSeek火了有一段时间了&#xff0c;春节假期因为没时间&#xff0c;所以关于deepseek大模型一系列的技术报告一直没看&#xff0c;新年开工后&#xff0c;抽一点时间把之前的坑补起来&#xff0c;关于DeepSeek-V3技术报告的解读已经有很多了&#xff0c;但我相信不同的人去读…...

suricata安装测试

系统版本为Ubuntu 22.04.4。 # cat /etc/issue Ubuntu 22.04.4 LTS \n \l # # uname -a Linux logging 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64 x86_64 x86_64 GNU/Linux添加suricata的apt库。 # add-apt-repository pp…...

Java反射简单理解

Java反射是指在运行时&#xff08;runtime&#xff09;能够动态地获取类的内部信息&#xff0c;并能直接操作类的属性和方法的一种机制。通过反射&#xff0c;开发者可以在运行时检查类、接口、字段和方法&#xff0c;并且可以调用这些方法和访问这些字段&#xff0c;而无需在编…...

WPS Word中英文混杂空格和行间距不一致调整方案

文章目录 问题1&#xff1a;在两端对齐的情况下&#xff0c;如何删除参考文献&#xff08;英文&#xff09;的空格问题2&#xff1a;中英文混杂行间距不一致问题问题3&#xff1a;设置中文为固定字体&#xff0c;设置西文为固定字体参考 问题1&#xff1a;在两端对齐的情况下&a…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

Pinocchio 库详解及其在足式机器人上的应用

Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库&#xff0c;专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性&#xff0c;并提供了一个通用的框架&…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

Python竞赛环境搭建全攻略

Python环境搭建竞赛技术文章大纲 竞赛背景与意义 竞赛的目的与价值Python在竞赛中的应用场景环境搭建对竞赛效率的影响 竞赛环境需求分析 常见竞赛类型&#xff08;算法、数据分析、机器学习等&#xff09;不同竞赛对Python版本及库的要求硬件与操作系统的兼容性问题 Pyth…...

微服务通信安全:深入解析mTLS的原理与实践

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言&#xff1a;微服务时代的通信安全挑战 随着云原生和微服务架构的普及&#xff0c;服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...

高防服务器价格高原因分析

高防服务器的价格较高&#xff0c;主要是由于其特殊的防御机制、硬件配置、运营维护等多方面的综合成本。以下从技术、资源和服务三个维度详细解析高防服务器昂贵的原因&#xff1a; 一、硬件与技术投入 大带宽需求 DDoS攻击通过占用大量带宽资源瘫痪目标服务器&#xff0c;因此…...