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

GESP2025年3月认证C++七级( 第三部分编程题(2)等价消除)

参考程序:

#include <cstdio>
#include <map>
using namespace std;
const int N = 2e5 + 5;
int n;
char s[N];
map <int, int> m;
long long ans;

int main() {
    scanf("%d", &n);
    scanf("%s", s + 1);
    int v = 0;
    m[v]++;  // 初始化状态0出现一次

    for (int i = 1; i <= n; i++) {
        v ^= 1 << (s[i] - 'a');  // 更新状态:翻转当前字母的位
        ans += m[v];            // 当前状态之前出现过几次,就说明有几个子串可以消除
        m[v]++;                 // 记录当前状态出现次数
    }

    printf("%lld\n", ans);
    return 0;
}

相关文章:

  • 图像形态学操作对比(Opencv)
  • VSCode中选择Anaconda的Python环境
  • java数组06:Arrays类
  • 数据结构--线性表
  • 让你方便快捷实现主题色切换(useCssVar)
  • 【征程 6】工具链 VP 示例中 Cmakelists 解读
  • 创建虚拟环境无法加载到pycharm当conda环境,只能为python环境
  • C语言-字符串操作函数手册:语法、技巧与经典应用
  • FreeRTOS使任务处于挂起态的API
  • 小白学习java第11天(下):多线程详解
  • MergeX亮相GTC2025:开启全球广告流量交易新篇章
  • ​asm汇编源代码之-汉字点阵字库显示程序源代码下载​
  • JAVA——初识JAVA
  • Java学习手册:Java异常处理机制
  • 前端防御性编程
  • java数组08:稀疏数组
  • 【第十三届“泰迪杯”数据挖掘挑战赛】【2025泰迪杯】【论文篇+改进】A题解题全流程(持续更新)
  • 高并发秒杀系统如何锁住库存
  • C语言数字图像处理---Gabor滤波器
  • JAVA学习-练习试用Java实现“实现一个Java程序,对大数据集中的数据进行类型转换”
  • 西宁手机网站建设/商品推广软文范例300字
  • 旅游景区网站模板/网页模板免费下载
  • 佛山顺德容桂网站制作/百度站长工具官网
  • 穆棱建设局网站/新产品推广方案范文
  • 昆明网站建设兼职/网站推广的软件
  • 做网站每年需付费吗/seo查询官方网站