操作集锦(dp)

Codeforces 题目集锦 我的CF账号:guozexin 如果题解有哪些疑惑的地方,可以直接在CF上找我的代码查看细节 1601A 这道题目乍一看很花哨,但和位运算有关的题目,手玩一下就可以把原题的操作换作一个很简单的操作。 本题中其实就是在同一位上选择k个1,使这k个1都变成0,若要使一位上的1都变成0,那这一位上1的个数需是k的倍数,所以我们对每一位上的1的个数取gcd,得到k,若k成立,则k的因数也一定成立,输出k的所有因数即可 1601B※ 青蛙爬井问题 在初学OI时也有一道这样的青蛙爬井的题目,当时a和b都是固定的,推出数 阅读详情

操作集锦

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述 

有一款自走棋有26种操作,每种操作我们都用a,b,c,d,...,x,y,za,b,c,d,...,x,y,z的符号来代替.  

现在牛牛有一个长度为nn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcd,那么操作视频就有a,b,c,d,ab,ac,ada,b,c,d,ab,ac,ad等(也就是操作序列的子序列).他现在想知道长度为kk且本质不同的操作视频有多少种.

比如对于abababab,长度为22且本质不同的结果有ab,aa,ba,bbab,aa,ba,bb。

考虑到答案可能非常大,你只需要输出在模1e9+71e9+7意义下的答案就可以了.

输入描述:

 

第一行两个整数n,kn,k.

第二行一个长度为nn的字符串,保证只存在小写字母.

输出描述:

一行一个整数表示长度为kk且本质不同的操作视频的个数. 

示例1

输入

复制

3 1
abc

输出

复制

3

备注:

 

1≤n≤1e31≤n≤1e3

0≤k≤n0≤k≤n

const int MAX=1010;
const int MOD=1e9+7;
int n,k;
char s[MAX];
int ch[MAX][30];
int dp[MAX][MAX];
int main(){
    cin>>n>>k>>s+1;
    dp[0][0]=1;
    for(int i=1;i<=n;i++){
        dp[i][0]=1;
        for(int j=1;j<=k;j++){
            dp[i][j]=(dp[i-1][j-1]+dp[i-1][j]-ch[j][s[i]-'a'])%MOD;
            ch[j][s[i]-'a']=dp[i-1][j-1];
        }
    }
    cout<<dp[n][k];
}

手把手教你使用HFSS仿真高速差分过孔—上 高速数字电路设计中,信号完整性是一个非常重要的问题。为了使信号保持良好的传输特性,PCB板上的互联线一般都采用均匀传输线,使互联线保持特性阻抗一致性,减少信号反射。然而PCB板上的互联线很多时候避免不了换层的问题,这时候就必须使用过孔。过孔会导致阻抗不连续,进而造成反射,出现信号完整性问题。         当信号传输速率越高,信号前沿越短的时候,过孔引入的信号完整性问题越严重,需要对过孔进行优 阅读详情

相关推荐

芯片硅前验证技术与驱动工程师实战指南

硅前验证是芯片开发流程中的关键环节,通过pre-silicon simulation等技术手段在流片前验证设计正确性。其核心技术包括软件仿真、FPGA原型验证和硬件仿真器解决方案,涉及Linux驱动开发、芯片架构理解和波形分析等核心技能。作为连接芯片设计与系统集成的桥梁,硅前验证能早期发现设计缺陷,节省数百万美元流片成本。以Cadence Palladium为代表的硬件仿真器,通过专用服务器系统实现比纯软件方案快100-1000倍的仿真速度,为驱动工程师提供完整的外设模型验证环境。掌握硅前验证技术可显著提升

weixin_42522857的博客 323

牛客练习赛60 C-操作集锦[dp]

牛客练习赛60 C-操作集锦[dp] 题目链接:https://ac.nowcoder.com/acm/contest/4853/C 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为...

MrBeanC的博客 362

开关电源EMI滤波设计:如何通过Cx和Cy电容精准抑制共模与差模干扰?

本文深入解析了开关电源EMI滤波设计中Cx和Cy电容的核心作用。Cx电容并联于火线与零线之间,专用于抑制差模干扰;Cy电容连接于火线/零线与地之间,则负责泄放共模干扰。文章详细阐述了二者选型、安规要求及PCB布局要点,并提供了基于测试频谱的实战调优策略,是解决电源传导噪声问题的实用指南。

7z8x2c4v6b9的博客 466

牛客练习赛60C 操作集锦(DP)

题目链接 链接:https://ac.nowcoder.com/acm/contest/4853/C 来源:牛客网 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,za,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为nn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcd,那么操作视频就有a,b,c,d,a...

qq_42479630的博客 276

BERTopic模型入门教程(附代码+参数调节)

BERTopic 是一种用于从文本数据中提取主题模型的新型方法。通过结合 BERT嵌入和传统的主题模型来生成语义丰富的主题。传统的主题模型(如LDA)主要依赖于词频矩阵,而 BERTopic 通过预训练语言模型生成高维语义嵌入来捕捉词语间的复杂关系,因此可以更好地处理上下文信息。BERTopic模型可以看作是创建其主题表示的一系列步骤。核心原理如下:就本质而言,BERTopic就是一个拼装框架,可以把每部分都替换成其他模型,只要完成任务即可。

m0_52069102的博客 1万+

叶绿体基因组提交NCBI全流程避坑指南

叶绿体基因组作为环状细胞器DNA,其数据提交并非简单上传,而是需严格遵循INSDC标准的学术出版行为。其核心原理在于元数据完整性、拓扑结构语义一致性与分类学路径精确匹配;技术价值体现在保障序列可追溯、可复现、可互操作;典型应用场景涵盖植物系统发育、条形码开发及合成生物学底盘构建。实践中,FASTA头行格式、feature table嵌套规则、taxid绑定及BankIt静默校验等环节极易引发失败。本文聚焦NCBI|叶绿体基因组数据上传中的高频报错与隐性约束,提供面向生物信息工程师的实操级规范解析。

weixin_31960565的博客 325

牛客练习赛60 C操作集锦(dp 去重)

linkkkk 题意: 给出长度为nnn的子序列,问长度为kkk的子序列有多少种 思路: 很容易想到dp[i][j]dp[i][j]dp[i][j]表示从前iii个字符里选jjj个字母的子序列种类; 根据第iii个字符选或不选,分为dp[i−1][j]+dp[i−1][j−1]dp[i-1][j]+dp[i-1][j-1]dp[i−1][j]+dp[i−1][j−1] 最后要减去重复的部分:dp[i][j]−dp[pre[i]−1][j−1]dp[i][j]-dp[pre[i]-1][j-1]dp[i][j

我们都有光明的未来 208

Plant Simulation新手入门:5步搞定生产线物流仿真(附模型库使用技巧)

本文为Plant Simulation新手提供了从零开始构建生产线物流仿真的五步入门指南。通过理念重塑、流程规划、对象连接、参数设置到数据分析的完整流程,帮助用户快速掌握这一强大仿真工具的核心逻辑。文章特别强调了模型库的高效使用技巧,助力工程师在虚拟环境中精准模拟和优化生产系统,提升规划效率。

efc123456的博客 333

线性dp求子序列的个数 牛客练习赛60 C题 操作集锦

操作集锦 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为n的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcd,那么操作视频就有a,b,c,d,ab,ac,ad等(也就是操作序列的子序列).他现在想知道长度为k且本质不同的操作视频有多少种. 比如对于abab,长度为2且本质不同的结果...

不知所云的博客 366

[工作流节点10] 获取多条数据并循环执行 —— 明道云批处理自动化实战

本文系统介绍了明道云工作流中"获取多条数据+循环执行"的批处理功能。该功能通过筛选数据集合并逐条处理,适用于批量通知、数据更新等场景。文章详细解析了功能配置方法,包括数据筛选、循环设置和异常处理,并提供了合同到期提醒等典型应用案例。同时强调了数据量控制、分批处理、错误处理等优化策略,帮助用户实现高效批量自动化。这一功能组合能将业务从单条处理升级为批量驱动,显著提升工作效率。

每日出拳老爷子的博客 455

ABAP CURR Data Type 深度解析与实战案例

CURR 数据类型是 SAP ABAP 中为处理货币金额而设计的一种特殊数据类型。CURR 数据类型能够自动根据关联的货币代码字段(例如 WAERS)确定小数位数,从而保证金额数据的精度与正确性。CURR 类型通常在 SAP 数据字典中使用,常见于各类业务数据表中,如会计凭证、销售订单等场景中,用于存储货币金额。CURR 数据类型底层实现上类似于 DEC 数据类型,但其特别之处在于与货币代码字段的绑定,这使得金额的格式化和显示可以自动匹配相应的货币规则。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 877

牛客练习赛60. C操作集锦(dp+容斥)

传送门 定义f[i][j]f[i][j]f[i][j]是以[1,i][1,i][1,i]形成长度为jjj的子序列数量 普通的转移方程为 f[i][len]=f[i−1][len−1]+f[i−1][len]f[i][len]=f[i-1][len-1]+f[i-1][len]f[i][len]=f[i−1][len−1]+f[i−1][len] 但是这样显然是多算了 考虑j<ij<ij<i且a[j]==a[i]a[j]==a[i]a[j]==a[i] 那么[1,j−1][1,j-1][1,

jziwjxjd的博客 426

Pareto 优化 (Pareto Optimization) 算法详解及案例分析

Pareto 最优解是指在多目标优化问题中,无法通过改进一个目标而不损害其他目标的解。具体来说,对于一个解x∗x^*x∗,如果不存在另一个解xxx使得所有目标函数fixf_i(x)fi​x都不劣于fix∗f_i(x^*)fi​x∗,且至少有一个目标函数fjxf_j(x)fj​x优于fjx∗f_j(x^*)fj​x∗,则x∗x^*x∗是 Pareto 最优解。

闲人编程的博客 2759

【牛客练习赛60:C】操作集锦(dp+子序列计数)

传送门 题目 给出长度为的字符串,求有多少种不同的长度为的子序列。(1≤n≤1e3,0≤k≤n)(1≤n≤1e3, 0≤k≤n)(1≤n≤1e3,0≤k≤n) 思路 空串也是一种合法的子序列,所以特判k=0k=0k=0 二维dp求解(当然也可以一维,我原本的做法是一维的,比下面的解法稍微麻烦一点,就不讲啦) 解法一:O(26n2)O(26n^2)O(26n2) dp[i][j]dp[i...

Cassie_zkq的博客 341

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

牛客练习赛60 C-操作集锦 长度为k的子序列个数(DP)

题目链接:https://ac.nowcoder.com/acm/contest/4853/C #include <bits/stdc++.h> using namespace std; #define LL long long const int mod=1e9+7; char s[100005]; LL f[1005][1005], g[30]={0}; int main...

H_ang的博客 995

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

牛客练习赛60 C 操作集锦

C 操作集锦 题意 由小写英文字母组成的长度为n的一个字符串,求不相同的长度为k的子串的数量对1e9+7取模。 1≤n≤1e30≤k≤n1≤n≤1e3 \quad 0 \leq k \leq n1≤n≤1e30≤k≤n 思路 DPDPDP 正难则反 正难则反,我们求所有不同的子串,不如把所有子串的数量求出来再减掉所以相同的子串数量。 若不去重求所有长度为k的子串的数量,则可由f[i][j]=f[i...

11eyes 275

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

牛客练习赛60 C.操作集锦

牛客练习赛60 C.操作集锦 题目链接 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为nn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcd,那么操作视频就有a,b,c,d,ab,ac,ad等(也就是操作序列的子序列).他现在想知道长度为kk且本质不同的操作视频有多少种. 比如对于...

旺崽的博客 2451

dp好题集锦

关于动态规划的专题

weixin_51435884的博客 634

操作集锦

链接:https://ac.nowcoder.com/acm/contest/4853/C 来源:牛客网 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,za,b,c,d,…,x,y,za,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为nnn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcdabcd,那么...

weixin_44828107的博客 221

Nowcoder practice 60 C.操作集锦

Nowcoder practice 60 C.操作集锦 #include<bits/stdc++.h> using namespace std; #define ll long long const int mod=1e9+7; int dp[1010][1010][27];//dp[i][j][k]前i个字符中长度为j以'a'+k结尾的不同本质的子序列个数 int main(){...

Harris-H的博客 491

操作集锦【牛客网】 牛客练习赛60

题目传送 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,…,x,y,z的符号来代替. 现在牛牛有一个长度为nnn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcdabcd,那么操...

qq_35975367的博客 440

牛客练习赛60 C-操作集锦 【动态规划】

传送门:C-操作集锦 题目描述 有一款自走棋有26种操作,每种操作我们都用 a,b,c,d,…,x,y,z 的符号来代替. 现在牛牛有一个长度为nn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abcdabcd,那么操作视频就有a,b,c,d,ab,ac,ad 等(也就是操作序列的子序列).他现在想知道长度为k且本质不同的操作视频有多少种. 比如对于aba...

Waiting For You 364

VIM 文件操作集锦

可以利用 :args 和 :argdo 命令  Java代码   :args d:\aa\**    注意这里用** 表示循环文件夹。路径中有空格时,可以在空格前加 '\' 即可。 Java代码   :ar   可以查看目前添加了那些目标文件。 Java代码   :argdo %s/str/new_str/g|up

uusad的专栏 1385

牛客练习赛60 C—操作集锦

链接:https://ac.nowcoder.com/acm/contest/4853/C 来源:牛客网 题目描述 有一款自走棋有26种操作,每种操作我们都用a,b,c,d,...,x,y,za,b,c,d,...,x,y,za,b,c,d,...,x,y,z的符号来代替. 现在牛牛有一个长度为nnn的操作序列,他现在可以从里面拿出某些操作来组合成一个操作视频, 比如说操作序列是abc...

wait 364

牛客练习赛 60 C. 操作集锦

链接 https://ac.nowcoder.com/acm/contest/4853/C 题意 求字符串 sss 中不同的子序列的个数 思路 设 dp[i,j]dp[i,j]dp[i,j] 为前 iii 个字符中长度为 jjj 的不同的子序列的个数 先不考虑哪些是重复的:f[i,j]=f[i−1,j]+f[i−1,j−1]f[i,j]=f[i-1,j]+f[i-1,j-1]f[i,j]=f[i−1,j]+f[i−1,j−1] 再考虑减去重复的子序列:可以发现如果在 iii 前存在 s[i]s[i]s[i]

c4Lnn 的 优快云 博客 176

【C++】算法集锦(4):给人看的动态规划

文章目录动态规划 动态规划 动态规划问题,它不叫动态规划算法,因为它不是一种算法,它是一众类型的问题的统称。 我们前面两篇的“递归算法”、“回溯算法”,以及接下来会讲的“贪心算法”等都属于动态规划的范畴。 所以这一篇是会持续翻新的,每写一种相关文章,都会在这里呈现出来。 那么,到底什么是动态规划呢? 在现实生活中,有一类活动的过程,由于它的特殊性,可将过程分成若干个互相联系的阶段,在它的每一阶段都需要作出决策,从而使整个过程达到最好的活动效果。因此各个阶段决策的选取不能任意确定,它依赖于当前面临的状态.

看,未来的博客 3961
上一篇: 三角形周长和(思维规律)
下一篇: 斩杀线计算大师(暴力解方程)
郭晋龙
博客等级 码龄6年 940粉丝 449原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郭晋龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值