2020杭电多校集训-Distinct Sub-palindromes

Chapter 7 Linear Voltage Regulators 这一章我们介绍LDO. 阅读详情

题目:
S is a string of length n. S consists of lowercase English alphabets.

Your task is to count the number of different S with the minimum number of distinct sub-palindromes. Sub-palindrome is a palindromic substring.

Two sub-palindromes u and v are distinct if their lengths are different or for some i (0≤i≤length), ui≠vi. For example, string “aaaa” contains only 4 distinct sub-palindromes which are “a”, “aa”, “aaa” and “aaaa”.

传送门:problem 6754
题目大意:求用最少的不同子回文串构成不同的S的字符串的数量,其中,S由小写英文字母组成,子回文串是回文串的子串

思路:

  1. n=1时,不难发现,S直接由26种英文字母构成即可
  2. n=2时,最少的不同子回文串有2种, 因为S的类型只可能有XX,XY,YX,这三种,而XX有X,XX两种,XY有X,Y两种,YX同XY, 因此,由于可以重复,此时S的数目就是26*26=676,即每个位置都有26种选择;
  3. n=3时,最少的不同子回文串有3种,因为S的类型只可能有XXX,XXY,XYX,XYZ等典型的4种, 对于XXX,有XXX,XX,X3种,对于XXY有XX,X,Y3种,对于XYX,有XYX,X,Y3种,对于XYZ,有X,Y,Z3种,因此,由于可以重复,此时S的数目就是262626=17576.
  4. n=4时,典型的S有XXXX,XXYX,XXYY,XYZX等4种,对于XXXX,显然4种不同子回文串,对于XXYX,有X,Y,XX,XYX4种, 对于XXYY,显然4种,对于XYZX,只有3种,因此,由于至少得有三个不同的元素,此时S的数目就相当于从26个里面有顺序的选3个,即A(26,3)=15600;
  5. n=5,6,……时,我们完全可以进行XYZXYZX等类似的扩展,这样子,不同的子回文串一定都是最少的3,因此,n>=4时,S的数目就都一样了,即15600种。

代码
直接switch相应输出即可

#include <iostream>
using namespace std;

int main()
{
    int t;
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    while(cin>>t)
        while(t--)
        {
            int n;
            cin>>n;
            switch(n)
            {
                case 1:     cout<<26<<endl;break;
                case 2:     cout<<676<<endl;break;
                case 3 :    cout<<17576<<endl; break;
                default :   cout<<15600<<endl;
            }
        }
    return 0;
}

matlab 一维相位解缠 一维相位解缠算法的matlab代码实现。 阅读详情

相关推荐

穿透鼠标实现后台点击,适用于任何窗口!【后台鼠标】【风雪】

也许你就是被这标题吸引来的,呵呵!好久没发帖了,勾引一下大家的胃口,当然有的人已经猜出原理了!既然来了,都要把原理学回家,不然就没意思了!很多游戏现在都不支持后台消息鼠标,要实现真的不是简单的,什么注入dll啊,什么hook俺也学不懂,那就简简单单另辟蹊径了下面来讲讲原理吧(下面的玩玩可以,用于实际不现实,俺也不藏了,看到这么多人回复,良心过意不去,呵呵)首先,将要点击的窗口上面覆盖的所有窗...

weixin_34129145的博客 1万+

2022杭电多校(一)

2022杭电多校(一)

m0_54646258的博客 964

雷电模拟器+Auto.js避坑指南:用桥接模式解决PC与模拟器连接超时问题

本文详细解析了雷电模拟器与Auto.js联调中的桥接模式应用,解决PC与模拟器连接超时问题。通过桥接模式配置、高频故障排查及多开环境下的高阶配置,提升开发效率与稳定性,特别适合需要稳定网络连接的Auto.js开发者。

weixin_28836989的博客 632

2022杭电多校(十)

2022杭电多校(十)

m0_54646258的博客 1070

CC2340R5-OAD升级实战:从配置到调试的全流程解析

本文详细解析CC2340R5芯片的OAD(空中升级)全流程,涵盖环境配置、MCU-BOOT、OAD-BL和OAD-APP程序开发,以及内存布局和调试技巧。通过实战案例展示如何实现蓝牙设备的远程固件升级,提升开发效率和产品可维护性。

silver的专栏 1063

Crush 终端 LLM 工具安装与使用指南:把 AI 编程助手装进你的命令行

喜欢命令行的开发者需要离线/轻量级 AI 助手的场景希望自定义模型与工具链的高级用户通过LSP + MCP + 多模型支持,Crush 不仅能写代码,还能理解项目、调用工具、连接服务,真正成为你的“终端编程搭档”。

weixin_44058951的博客 1616

2023年杭电多校第一场-E.Cyclically Isomorphic题解

其次我们可以在想,预处理的时间复杂度降下来了,但是后面比较时间的时间复杂度还没有降下来,每次两个字符串比较的复杂度是O(s.size() ) ,所以我们就需要在优化一下,既然不能用字符串比较,那我们就可以考虑怎么能转化成O(1),我们会想到数的比较可以实现,所以我们就想到了字符串哈希,用字符串哈希可以搞定。我们如果想要通过字符串右移使用substr分割,找出最小的来,或者把他的可能全部存下来,后面在进行字符串的比较,这样很显然时间复杂度太高了。所以就找到了我们的板子,找循环串的最小表示。

qq_62899367的博客 627

pentaho-kettle依赖拉取失败?试试这个Maven仓库配置的终极解决方案

本文详细解析了Pentaho Kettle依赖拉取失败的常见原因,并提供了三种Maven仓库配置方案,包括基础pom.xml配置、全局settings.xml设置以及企业级私有镜像仓库搭建。通过实战验证的方法和常见问题排查指南,帮助开发者彻底解决pentaho-kettle依赖问题,提升项目构建效率。

weixin_30275415的博客 205

2023暑假多校总结(杭电+牛客)

今年暑假打了杭电+牛客的多校,个人感觉多校题目难度稍高(相对于我的水平来说),想补题也只能挑一些看得懂题解的进行补题,每场5小时,都是签到完然后坐牢((,现在的打算就是先把一些常考的知识点学习了解一下,高级算法那些的目前也接触不到。而且很多题目都是考到了数学知识,可以说是数学场,对于数学基础不牢的我很是煎熬,总之考的非常的全面,所以感觉一些题目都非常的新颖,在日常训练时都不会遇到,这也算是一种收获吧,接触到了新的知识点。要 步入大三了,只剩这最后的半年了,希望不要铁牌退役吧哈哈。

m0_61125284的博客 783

星载SAR系统参数设计过程自动化方法研究

 本文提出了一种 SAR系统参数自动化设计的 方法。首先,针对部分参数仍需手工选取的现状 建立了最优化求解模型,并给出了 PRF 和波位位 置的优化选取结果,使参数设计流程更加高效便 捷。然后,针对 SAR 系统参数设计过程中部分技 术指标的评测结果不满足用户需求时无法自动调 节的现状,采用 PID 控制器对方位向天线尺寸、信 号带宽、PRF 等参数进行自动调节,使得方位分辨 率、距离分辨率、方位模糊比等技术指标向用户需 求值逐步靠近。通过仿真实验验证了该方法的可 行性,实现了SAR系统参数设计过程的自动化

qq_43416206的博客 1526

YOLOv13手把手添加YOLOv13注意力机制:Biformer(BiLevelRoutingAttentio)YOLOv13双层路由注意力 革命性的高效注意力机制深度解析YOLOv13YOLOv1

YOLOv13 BiLevelRoutingAttention是一种革命性的高效注意力机制,YOLOv13通过双层路由策略显著降低了计算复杂度。YOLO它将注意力计算分为区域级路由和令牌级注意力两个层次,前者选择最相关的K个区域,后者仅在选定区域内执行注意力计算。这种设计借鉴了人类视觉系统的分层处理机制,在保持长距离依赖建模能力的同时,将复杂度从O(N²)降至O(NK + P⁴)。该机制还集成了可微分路由、自适应参数和LePE位置编码等创新技术,YOLOv13 YOLOv13 YOLOv13 YOLOv13

FJN110的博客 660

HDU 多校第 8 场比赛记录

HDU 多校第 8 场比赛记录

Tonvia的博客 363

毕业设计:丹麦电力电价预测预测未来24小时的电价pytorch+lstm+历史特征和价格+时间序列 电价预测模型资源 完整代码数据可直接运行

毕业设计:丹麦电力电价预测预测未来24小时的电价pytorch+lstm+历史特征和价格+时间序列 电价预测模型资源 完整代码数据可直接运行

356

2024杭电多校第八场

2024杭电多校第八场

xinchu0309的博客 1545

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

2024杭电多校第4场 7|3|6|12|4

我们可以扫描线+ 树状数组,这是如何操作的呢,就是每一列一列的扫,我们树状数组维护每一列扫的最大值,因为有性质该序列是严格单调的,所以可以直接 lowbit 向上转移。由于要最大化最小值,显然是二分,我们可以从左往右,先前缀和,然后 set 来维护下标。我们可以考虑优化,我们会发现敌人和我们之间的距离,在移动的过程中曼哈顿距离 最多不会超过。次询问 每次不能经过我们所询问的矩形区域,但是我们可以考虑每次的询问,我们怎么去处理。去更新,肯定会比原来的更优,因为 小的数必然会被更新,大的数更新的少,而。

2201_75347307的博客 1962

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

2024 杭电多校1 题解

并且合并时一般不会重复地合并某个线段树,所以我们最终增加的点数大致是nlogn级别的。(摘自oiwiki)你需要对于每个节点 i ,计算 ansi=∑u∈subtree(i),v∈subtree(i)f(u,v) ,其中 subtree(i) 表示 i 的子树。右区间一定大于左区间,当我们算两个子树合并的贡献时,用右区间的区间平方数乘上左区间的区间个数可以得到。定义一个点对的值 f(u,v)=max(Au,Av)×|Au−Av|。如果v在u子树里,v子树的答案已经算过了,在算u时直接加上v的答案即可。

landexiangmz的博客 2057

2022杭电多校(四)

2022杭电多校(四)

m0_54646258的博客 1196

2025杭电多校第六场 钥匙迷宫 取模 传送排序 cats的max 个人题解

摘要 本文包含两道算法题目解析: Cats的Max(状态压缩DP) 给定n×m矩阵,要求选k行,使得每列最大值之和最大。使用状态压缩DP,预处理每行子集和,通过动态规划转移状态,复杂度O(m·3^m)。当k≥m时直接暴力求解。 传送排序(线段树+DP) 给定排列,通过建立传送门排序,求最小花费。定义dp[a_i]为处理到a_i时能节省的最大费用,利用线段树维护区间最大值优化查询。最终答案为n-max(dp)+1,需特殊处理n的情况。 两题均采用高效预处理和优化技巧,分别使用状态压缩和线段树数据结构来降低时间

CUC-MenG的博客 743

2023 牛客多校杭电多校总结

就记录一下学习到的知识点。

mqnu0的博客 791

题解|2024暑期杭电多校01

题解|2024暑期杭电多校01

CCLMSY‘s Blog 2497

acm暑期训练round 6+杭电多校

acm训练+杭电多校个人题解

ZhangYZhhh的博客 1087

题解|2024暑期杭电多校03

题解|2024暑期杭电多校03

CCLMSY‘s Blog 1198

2024 杭电多校4 题解

以1)为例,wa>=wc>=wd,wd是在[0,wc]里最大的那个,我们在枚举wc时可以立马确定wd取值,于是我们从小到大枚举wc,就可以知道在当前wc范围内wd的最大取值。注意到n和m的数据范围比较小,去枚举每个数字选或者不选的复杂度O(2^n),枚举所有异或和的情况O(2^m),O(2^(n+m))加点优化,似乎正好能卡过。你现在位于 (0,0),每次你可以选择从 (x,y) 移动到 (x+1,y) 或者 (x,y+1),当你位于某个宝箱正上方时,你将可以挖出它并拿走里面的所有金币。

landexiangmz的博客 1183

2025杭电多校第五场 四角洲行动、“合理”避税、随机反馈、k-MEX 个人题解

这里提供三篇题解的摘要: k-MEX组合数学题: 题目要求计算给定条件下mex值的期望 通过组合数推导得出公式:E = k/(n-k+1) 使用费马小定理求逆元完成模运算 时间复杂度O(t*logMOD) 随机反馈概率DP: 动态规划状态dp[i]表示从第i分钟开始的最小期望罚时 转移方程考虑交题和不交题两种情况的最优选择 倒序DP处理,初值dp[n]=n 注意避免混用printf和cin/cout 合理避税二分贪心: 二分答案判断最少月份是否可行 贪心策略:尽可能多次取k元,然后处理余数 用优先队列处理剩

CUC-MenG的博客 954

2023杭电多校(一)

题解:鸽巢原理的应用,至少有一个堆有。

weixin_62599885的博客 864

2024杭电多校(4)1012. 寻找宝藏 【扫描线、树状数组二维偏序】

扫描线、树状数组

m0_73500785的博客 900

2024杭电多校第五场

直接猜测,1 奇 奇的时候是必败状态。(把第三个数字删除,然后另外一个数字转换成1+奇的状态)。求两个gcd,一个gcd1是去重之后的所有数。一个gcd2是去重之后去了最小的数字的gcd。发现如果n==2(mod3)那么就是2的n-1次方。否则直接是2的n次方。如果后面有数字 a[j]%a[i]==gcd1 那么肯定就可以直接 n步。在其他点的时候有1/(n-1)的概率可以直接到达。1/n+1/n*1/(n-1)如果gcd1=最小的数字,那么肯定就是n-1。在0号点的时候有 1/n的概率直接到达终点。

nihaoakekeke的博客 690
上一篇: 轻松解决试题 基础练习 Huffuman树(C++)
下一篇: 将元素周期表导入程序的小方法 以及 现成的元素周期表代码
「已注销」
博客等级 码龄7年 12粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值