news 2026/9/5 11:32:04

牛牛喜欢字符串【牛客tracker 每日一题】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
牛牛喜欢字符串【牛客tracker 每日一题】

牛牛喜欢字符串

时间限制:1秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

牛牛现在有一个长度n nn的字符串(仅包含小写字母),他现在把这个字符串,每隔k kk个就分出来一个子串,比如[ 1 , k ] [1,k][1,k]为第一个子串,[ k + 1 , 2 k ] [k+1,2k][k+1,2k]为第二个、[ 2 k + 1 , 3 k ] [2k+1,3k][2k+1,3k]为第三个…(保证n nn%k = 0 k=0k=0)

牛牛想要把这些子串都变成一样的。他可以选择任意一个子串的任意一个字符进行更改,但是他太懒了,他想让你帮他算算最少要进行多少次操作。

输入描述:

第一行输入n ( 1 ≤ n ≤ 10 6 ) n(1≤n≤10^6)n1n106k ( 1 ≤ k ≤ n k(1≤k≤nk(1kn数据保证n nn%k = 0 k=0k=0),第二行输入该字符串。

输出描述:

输出需要的最少操作次数

示例1

输入:

6 2 abaaba

输出:

2

说明:

改为aaaaaa

示例2

输入:

6 3 abbabb

输出:

0

解题思路

首先明确字符串被等分为n / k n/kn/k个长度为k kk的子串,要让所有子串相同,等价于让所有子串的第j ( 0 ≤ j < k ) j(0≤j<k)j(0j<k)个位置的字符一致;解题时遍历每个位置i ii0 00k − 1 k-1k1),统计所有子串中该位置的26 2626个小写字母的出现频次,找出频次最大值m x mxmx,该位置的最少修改次数为子串总数n / k − m x n/k - mxn/kmx(保留出现最多的字符,其余修改);累加所有k kk个位置的最少修改次数,得到整体的最少操作次数。该贪心策略保证每个位置的修改数最优,累加后即为全局最优解,字符仅26 2626个,统计频次耗时固定,整体时间复杂度O ( n ) O(n)O(n),完美适配n ≤ 10 6 n≤10^6n106的规模,高效且精准计算出答案。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=2e5+10;intmain(){ll n,k,sum=0;cin>>n>>k;string s;cin>>s;for(ll i=0;i<k;i++){ll cnt[30]={0};for(ll j=i;j<n;j+=k)cnt[s[j]-'a']++;ll mx=0;for(ll i=0;i<26;i++)mx=max(mx,cnt[i]);sum+=n/k-mx;}cout<<sum<<endl;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/5 7:44:28

Android模拟器启动失败?一文说清HAXM安装必要性

Android模拟器卡在黑屏&#xff1f;别急&#xff0c;HAXM才是性能起飞的关键 你有没有过这样的经历&#xff1a;兴冲冲打开Android Studio&#xff0c;新建一个AVD&#xff08;Android虚拟设备&#xff09;&#xff0c;点击“启动”后却卡在黑屏界面&#xff0c;Logcat里跳出一…

作者头像 李华
网站建设 2026/9/5 11:31:18

CAPL编写CAN通信测试脚本:从零实现完整示例

用CAPL写CAN通信测试脚本&#xff1a;一个能跑起来的完整实战指南你有没有遇到过这样的场景&#xff1f;开发阶段&#xff0c;要验证某个ECU是否按时发出车速报文&#xff1b;集成测试时&#xff0c;需要确认诊断请求能在50ms内得到响应&#xff1b;回归测试中&#xff0c;反复…

作者头像 李华
网站建设 2026/9/5 11:31:29

智能翻译服务客户支持体系建设

智能翻译服务客户支持体系建设 &#x1f310; AI 智能中英翻译服务 (WebUI API) 项目背景与技术演进 随着全球化进程的加速&#xff0c;跨语言沟通已成为企业运营、科研协作和内容传播中的核心需求。传统机器翻译系统虽然在覆盖率上表现良好&#xff0c;但在语义连贯性、句式自…

作者头像 李华
网站建设 2026/9/4 7:52:52

影视预演自动化:导演用AI快速生成分镜视频

影视预演自动化&#xff1a;导演用AI快速生成分镜视频 在影视制作的前期阶段&#xff0c;分镜脚本&#xff08;Storyboard&#xff09; 是导演与团队沟通视觉构想的核心工具。传统流程中&#xff0c;绘制分镜、制作动态预览&#xff08;Animatic&#xff09;往往需要数天甚至数…

作者头像 李华
网站建设 2026/9/4 7:22:49

互联网大厂求职面试:Java小白的技术挑战与成长

互联网大厂求职面试&#xff1a;Java小白的技术挑战与成长 在一个阳光明媚的下午&#xff0c;超好吃来到了某知名互联网大厂的面试现场。作为一名Java小白&#xff0c;他显得有些紧张&#xff0c;但也充满期待。 第一轮&#xff1a;核心技术与平台 面试官&#xff1a;“超好吃&…

作者头像 李华