博客
关于我
第十一届十月份蓝桥杯省赛 H - 子串分值和:求字符串所有子串的不同字符个数和(思维/线段树)
阅读量:320 次
发布时间:2019-03-04

本文共 1074 字,大约阅读时间需要 3 分钟。

?????????????????????????????

  • ???????last???????????????
  • ????????????c?????????????????
  • ????????i????????????????prev???????(i - prev) * (n - i + 1)?
  • ????????????????
  • ???????????

    ????

  • ????????????last??????????????????????26???26?????????-1?
  • ?????????????????????????????last???
  • ??????????????????i????????????????prev???????(i - prev) * (n - i + 1)?
  • ??????????????????????????
  • ????

    #include 
    using namespace std;int main() { char s[] = "abcdabca"; int n = strlen(s); int last[26] = {-1}; // ???????????? long long ans = 0; for (int i = 0; i < n; ++i) { char c = s[i]; int idx = c - 'a'; if (last[idx] != -1) { // ???? ans += (i - last[idx]) * (n - i + 1); } // ??????? last[idx] = i; } cout << ans << endl; return 0;}

    ????

  • ??????last???????????????????????-1????????
  • ????????????????????c??????idx?
  • ?????????c???last?????????????????????last[idx]???????(i - last[idx]) * (n - i + 1)????ans??
  • ?????????????i???last[idx]?????????
  • ??????????????ans?
  • ???????????O(n)??????????????

    转载地址:http://siqq.baihongyu.com/

    你可能感兴趣的文章
    Nodejs中的fs模块的使用
    查看>>
    NodeJS使用淘宝npm镜像站的各种姿势
    查看>>
    NodeJs入门知识
    查看>>
    nodejs包管理工具对比:npm、Yarn、cnpm、npx
    查看>>
    NodeJs单元测试之 API性能测试
    查看>>
    nodejs图片转换字节保存
    查看>>
    nodejs在Liunx上的部署生产方式-PM2
    查看>>
    nodejs基于art-template模板引擎生成
    查看>>
    nodejs字符与字节之间的转换
    查看>>
    NodeJs学习笔记001--npm换源
    查看>>
    NodeJs学习笔记002--npm常用命令详解
    查看>>
    nodejs学习笔记一——nodejs安装
    查看>>
    vue3+Element-plus icon图标无法显示的问题(已解决)
    查看>>
    NodeJS实现跨域的方法( 4种 )
    查看>>
    nodejs封装http请求
    查看>>
    nodejs常用组件
    查看>>
    nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
    查看>>
    Nodejs异步回调的处理方法总结
    查看>>
    NodeJS报错 Fatal error: ENOSPC: System limit for number of file watchers reached, watch ‘...path...‘
    查看>>
    nodejs支持ssi实现include shtml页面
    查看>>