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

LQ0103 子串分值【字符串】

题目来源:蓝桥杯2020初赛 C++ A组H题

题目描述
对于一个字符串S ,我们定义S 的分值f (S ) 为S 中恰好出现一次的字符个数。
例如f (”aba”) = 1, f (”abc”) = 3, f (”aaa”) = 0。
现在给定一个字符串S [0…n - 1](长度为n),请你计算对于所有S 的非空子串S [i… j](0 ≤ i ≤ j < n), f (S [i … j]) 的和是多少。

输入格式
输入一行包含一个由小写字母组成的字符串S 。
对于20% 的评测用例,1 ≤ n ≤ 10;
对于40% 的评测用例,1 ≤ n ≤ 100;
对于50% 的评测用例,1 ≤ n ≤ 1000;
对于60% 的评测用例,1 ≤ n ≤ 10000;
对于所有评测用例,1 ≤ n ≤ 100000。

输出格式
输出一个整数表示答案。

输入样例
ababc

输出样例
21

问题分析
字符串处理问题。

AC的C++语言程序如下:

/* LQ0103 子串分值 */

#include <iostream>

using namespace std;

int main()
{
    string s;
    cin >> s;
    long long sum = 0;
    for (int i = 0; s[i]; i++) {
        int l, r;
        for (l = i - 1; l >= 0; l--)
            if (s[l] == s[i]) break;
        for (r = i + 1; s[r]; r++)
            if(s[r] == s[i]) break;

        sum += (i - l) * (r - i);
    }

    cout << sum << endl;

    return 0;
}

相关文章:

  • 数据库实战经验分享(全量表,增量表,拉链表,流水表,快照表)
  • 【node.js从入门到精通】使用express创建web服务器,路由,进行中间件的创建链接路由及其他中间件
  • [附源码]Java计算机毕业设计SSM电力公司员工安全培训系统
  • stm32f4xx-ADC
  • Linux命令老是记不住?一篇文章帮你解决。Linux常用命令汇总
  • 基于SPSS的医疗医保费用数据分析预测(C#)
  • 2022年科协第二次硬件培训总结
  • 计算机网络 性能指标 思维导图
  • 【初学者入门C语言】之编译预处理(十)
  • 【MySQL从入门到精通】【高级篇】(二十六)建了索引就能用么?我看未必。来看看几种索引失效的情况吧
  • leetcode47全排列2刷题打卡
  • HTTP首部的那些事,通用首部,请求首部
  • 【C基础篇】之C语言概述
  • 【运维】linux shell 编程之函数使用
  • 【MATLAB教程案例25】常用图像变换域的matlab仿真分析——DFT频域,DCT域,小波域等
  • gulp 教程
  • mongo索引构建
  • Redux 中间件分析
  • Web标准制定过程
  • Windows Containers 大冒险: 容器网络
  • 记一次用 NodeJs 实现模拟登录的思路
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 理解在java “”i=i++;”所发生的事情
  • 线上 python http server profile 实践
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 用element的upload组件实现多图片上传和压缩
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • # 睡眠3秒_床上这样睡觉的人,睡眠质量多半不好
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • (2009.11版)《网络管理员考试 考前冲刺预测卷及考点解析》复习重点
  • (3)选择元素——(17)练习(Exercises)
  • (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)...
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (定时器/计数器)中断系统(详解与使用)
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (接口自动化)Python3操作MySQL数据库
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (五)MySQL的备份及恢复
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .Net IOC框架入门之一 Unity
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET连接数据库方式
  • .pop ----remove 删除
  • /etc/fstab 只读无法修改的解决办法
  • [2013AAA]On a fractional nonlinear hyperbolic equation arising from relative theory
  • [AutoSar NVM] 存储架构
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]