暗黑的字符串

Win64 驱动内核编程-16.WFP网络监控驱动(防火墙) WFP驱动监控网络 WFP是微软推出来替代TDIHOOK、NDISHOOK等拦截网络通信的方案,WFP的框架非常庞大,在RING3和RING0各有一套类似的函数,令人兴奋的是,即使在R3使用WFP,也可以做到全局拦截访问网络。由于WFP的范围太广,实在难以一言概括,感... 阅读详情

题目描述

一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如:
BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串
AABBCCAABB 不存在一个长度为3的连续子串包含'A','B','C',所以是暗黑的字符串

你的任务就是计算出长度为n的字符串(只包含'A'、'B'和'C'),有多少个是暗黑的字符串。


本题思路:

本题是典型的动态规划的问题,求f(n)与f(n-1)的关系的。

经发现,f(n)只与f(n-1)的最后两个字符有关,如果f(n-1)的最后两个字符相等,那么用输入ABC都可以得到f(n),如果f(n-1)的最后两个字符不等,那么只能输入和这两个字符一样的字符,比如AB我就只能在最后输入A或者B。

所以设f(n-1)由两部分组成,一部分是s(n-1),表示最后两个字符相等的所有集合的个数,一部分是d(n-1),表示最后两个字符不相等的所有集合的个数。

所以f(n)=3S(n-1)+2D(n-1)=2f(n)+S(n-1)

又由s(n-1)和d(n-1)推导s(n)和d(n),发现s(n-1)推导后的结果有1/3的结果是最后两个字符串相同的,比如AA有AAA,AAB,AAC;而d(n-1)推导后的结果有1/2的结果是最后两个字符串相同的,比如AB有ABA,ABB。

所以得到s(n)=s(n-1)+d(n-1)=f(n-1)

所以f(n)=2*f(n-1)+f(n-2)

代码如下:

 <?php
$handler = fopen('php://stdin', 'r');
$n =  trim(fgets($handler));
echo cal($n);
function cal($n) {
    //动态规划
    if ($n == 1) return 3;
    if ($n == 2) return 9;
    $res = 2*cal($n-1) + cal($n-2); 
    return $res;
}


AIGC实战——基于Transformer实现音乐生成 Transformer 是最流行的音乐生成技术之一,因为音乐可以视为一个序列预测问题,Transformer 模型将音符视为一个个符号的序列(类似于句子中的单词),从而用于生成音乐。Transformer 模型基于先前音符预测下一个音符,生成音乐作品。在本节中,将学习如何处理音乐数据,并应用 Transformer 生成与给定训练集风格相似的音乐。 阅读详情

相关推荐

RV1126B芯片实战:如何用这款视觉处理器SoC打造你的第一个AI摄像头项目

本文详细介绍了如何利用瑞芯微RV1126B视觉处理器SoC从零构建AI摄像头项目。涵盖硬件选型、开发环境搭建、ISP配置、AI模型部署及系统集成等关键步骤,帮助开发者高效实现边缘计算方案,特别适合智能安防和工业检测应用。

dropout6artist的博客 931

刷刷笔试题~~[递归类编程]

1.[编程题]暗黑的字符串 一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串 AABBCCAABB 不存在一个长度为3的连续子串包含'A','B','C',所以是

nanaMasuda的博客 1470

Android11 关于三方应用获取su权限

SELinux,全称Security-Enhanced Linux,是一种基于Linux内核的安全机制。它通过强制访问控制(MAC)来增强Linux系统的安全性,如果不禁用SELinux,完成下面的修改可能会导致设备进入Recovery界面!adb shell getenforce 为Permissive(宽容模式),查看报错日志,发现是客户apk想使用su命令提权,但是没有权限!对于保护系统资源和防止未经授权访问非常有帮助!系统这边做修改,让su权限下放到三方应用.客户的apk运行报错。

sinat_37429535的博客 1904

每日编程系列——暗黑的字符串

一、题目: 一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串AABBCCAABB 不存在一个长度为3的连续子串包含'A','B','C',所以是暗黑的字符串你的任务...

weixin_34348111的博客 163

Edge浏览器IE模式全攻略:从企业应用到老旧网站兼容(含常见问题解答)

本文详细解析了微软Edge浏览器的IE模式,这是解决企业遗留系统与老旧网站兼容性问题的关键技术。文章从核心原理出发,提供了从个人用户临时启用到企业级组策略部署的完整配置指南,并深入探讨了文档模式调优、ActiveX控件处理等高级技巧,最后汇总了常见问题排查与安全实践,帮助用户高效平衡兼容性与现代化浏览体验。

weixin_29227425的博客 612

别再只看成交量了!用通达信这个VOL监测公式,一眼识别主力吸筹与出货信号

本文详细介绍了通达信VOL监测公式的实战应用,通过彩色量柱和换手率分层技术,帮助投资者识别主力吸筹与出货信号。该公式结合动态量能标准化和多周期均线组合,提供可视化主力行为图谱,提升交易决策的准确性。

weixin_28693447的博客 662

[C++]牛客 WY29 暗黑的字符串

描述 一个只包含’A’、‘B’和’C’的字符串,如果存在某一段长度为3的连续子串中恰好’A’、‘B’和’C’各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串"CBA"中包含了’A’,‘B’,‘C’各一个,所以是纯净的字符串 AABBCCAABB 不存在一个长度为3的连续子串包含’A’,‘B’,‘C’,所以是暗黑的字符串 你的任务就是计算出长度为n的字符串(只包含’A’、‘B’和’C’),有多少个是暗黑的字符串。 输入描述: 输入一个整数n,表示字符串长

cpb____的博客 189

115网页版VR模式终于能用了!电脑直接播放vr视频沉浸感满满 115vr播放 无需vr头盔播放vr视频 在线vr播放器 115网盘360度视频播放方法 115全景视频播放教程

油猴 + 脚本让你网页端直接开启 VR 模式支持 360 视频拖动视角,非常沉浸适合电脑设备直接用无需vr头盔也能轻松畅看vr视频,希望也能帮到你。如果你也被 115 的限制搞烦了,不妨试试这招。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 5718

46、暗黑字符串

(个人水平有限,请见谅!) 题目描述: 一个只包含’A’、‘B’和’C’的字符串,如果存在某一段长度为3的连续子串中恰好’A’、'B’和’C’各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串&quot;CBA&quot;中包含了’A’,‘B’,‘C’各一个,所以是纯净的字符串。 AABBCCAABB 不存在一个长度为3的连续子串包含’A’,‘B’,‘C’,所以是...

qq_30534935的博客 251

pip install mysql出现error: subprocess - exited-with-error的解决方案

本文主要介绍了pip install mysql出现error: subprocess - exited-with-error的解决方案,希望能对使用mysql的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 5万+

vue2/3 - 【超详细】最新网站接入使用支付宝支付功能,点击支付跳转新页面后生成订单及支付二维码,实现支付宝在线付款详细的教程(整个支付的完整配置及支付流程,一键复制源码开箱即用)!

vue支付宝付款,vue支付宝支付,vue如何实现支付宝在线付款,vue网页pc项目接入支付宝支付,vue支付宝支付详细教程,vue2支付宝在线支付的详细示例代码,vue如何做支付宝付款,vue怎么实现支付宝的付款功能,vue调用支付宝进行付款支付,vue PC项目实现 支付宝支付,vue h5页面调用支付宝支付,vue页面唤起支付宝支付功能,vue支付宝支付跳转到新页面,vue如何跳转新开一页展示支付宝二维码支付,vue怎么新开页面进行支付宝在线支付,vue新页面支付宝支付功能,前端vue支付宝支付教程,

✅ 精选推荐文章 5730

[编程题]暗黑的字符串

一个只包含’A’、’B’和’C’的字符串,如果存在某一段长度为3的连续子串中恰好’A’、’B’和’C’各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串”CBA”中包含了’A’,’B’,’C’各一个,所以是纯净的字符串 AABBCCAABB 不存在一个长度为3的连续子串包含’A’,’B’,’C’,所以是暗黑的字符串 你的任务就是计算出长度为

u012507032的博客 415

华为OD机试真题 新系统【进制转换后自定义排序】

华为OD机试 新系统真题【进制转换后自定义排序】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【进制转换后自定义排序】多语言题解。

qq_45776114的博客 597

暗黑字符串

/** *@ author StormMaybin *@ date 2016-09-13 */ 生命不息,奋斗不止! 题目描述一个包含‘A’,‘B’,‘C‘的字符串,如果存在某一段长度为3得连续子串中恰好含有‘A’,‘B’,‘C‘各有一个,那么这个字符串就是纯净的,否则就是暗黑的,例如: BAACAACCBAAA连续字符串”CBA”中恰好包含ABC各一个,所以这个字符串是纯净的字符串 AAB

StormMaybin的博客 2200

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

网易真题之暗黑字符串

题目如下: 字符串只包含‘A’,'B','C',对于一个任意长度的字符串,如果存在连续的3个字符同时包含"A","B""C",那这个字符串是纯净的,否则称为暗黑字符串。比如“BCBBACBBCA”就是纯净字符串,“ABBAACCBBA”就是暗黑字符串。   input:一个整数,表示字符串的长度 output:暗黑字符串可能的个数 分析: 这种题目使用遍历或者排列组合求解,基本

wuchao0508的博客 244

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

网易0912 暗黑字符串

网易0912 暗黑字符串   题目的大意:   一个字符串只能由‘A’、‘B’、‘C’三个字母组合而成;若在字符串中如果‘A’‘B’‘C’三个字符任意组合出现,则此字符串为清澈的,否则为黑暗的。如“AABBCCABAA”因为包含“CAB”,所以是清澈的;“AABBCCBCBBA”则是黑暗的。   输入:字符串的长度n(1   输出:包含的黑暗字符串的个数   样例:   输入

Crazy_For_Net的博客 3491

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

[编程题] 暗黑的字符串

一个只包含’A’、’B’和’C’的字符串,如果存在某一段长度为3的连续子串中恰好’A’、’B’和’C’各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串”CBA”中包含了’A’,’B’,’C’各一个,所以是纯净的字符串 AABBCCAABB 不存在一个长度为3的连续子串包含’A’,’B’,’C’,所以是暗黑的字符串 你的任务就是计算出长度为

半夏。的博客 380

暗黑的字符串-动态规划

一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如: BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串 AABBCCAABB 不存在一个长度为3的连续子串包含'A','B','C',所以是暗黑的字符串 你的任务就是计算出长度

ForLearning 776

网易2017笔试 暗黑字符串

字符串只包含‘A’,’B’,’C’,对于一个任意长度的字符串,如果存在连续的3个字符同时包含”A”,”B”“C”,那这个字符串是纯净的,否则称为暗黑字符串。比如“BCBBACBBCA”就是纯净字符串,“ABBAACCBBA”就是暗黑字符串。input:一个整数,表示字符串的长度 output:暗黑字符串可能的个数#include <iostream> using namespace std;#de

QiangLi的专栏 717

java 暗黑字符串_网易编程题暗黑字符串原理解析以及Java源码

一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如:BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串AABBCCAABB 不存在一个长度为3的连续子串包含'A','B','C',所以是暗黑的字符串你的任务就是计算出长度为n的字符串...

weixin_39624360的博客 111
上一篇: 算法--回文序列
下一篇: 连续最大和
lufeeBlog
博客等级 码龄9年 2粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值