题目

CF894A

思路

\(\text{DP}\)

一个数组\(\text{QAQ[4][101]}\)

\(\text{QAQ[1][i]表示在i这个位置q的个数}\)

\(\text{QAQ[2][i]表示在i这个位置qa的个数}\)

\(\text{QAQ[3][i]表示在i这个位置能形成QAQ的个数}\)

对于第\(i\)个位置的\(Q\)

可以组成\(\text{QAQ[2][i]}\)个\(QAQ\)

所以\(\text{QAQ[3][i]+=QAQ[2][i]}\)

对于第\(i\)个位置的\(A\)

可以组成\(\text{QAQ[1][i]}\)个\(QA\)

所以\(\text{QAQ[2][i]+=QAQ[1][i]}\)

\(Code\)

#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<algorithm>
using namespace std;
string s;
int QAQ[4][101];
//QAQ[1][i]表示在i这个位置q的个数
//QAQ[2][i]表示在i这个位置qa的个数
//QAQ[3][i]表示在这个位置能形成QAQ的个数
inline int read(){
int x=0;bool f=0;char c=getchar();
while(c<'0'||c>'9'){if(c=='-')f=!f;c=getchar();}
while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
return f?-x:x;
} int main(){
cin>>s;
int ns=s.length();
for(int i=0;i<ns;++i){
if(i!=0){
QAQ[1][i]=QAQ[1][i-1];
QAQ[2][i]=QAQ[2][i-1];
QAQ[3][i]=QAQ[3][i-1];
}
if(s[i]=='Q'){
QAQ[1][i]++;
QAQ[3][i]+=QAQ[2][i];
}
if(s[i]=='A'){
QAQ[2][i]+=QAQ[1][i];
}
}
cout<<QAQ[3][ns-1];
return 0;
}

洛谷 CF894A QAQ的更多相关文章

  1. 洛谷 P3410 拍照

    洛谷 P3410 拍照 题目描述 小B有n个下属,现小B要带着一些下属让别人拍照. 有m个人,每个人都愿意付给小B一定钱让n个人中的一些人进行合影.如果这一些人没带齐那么就不能拍照,小B也不会得到钱. ...

  2. 洛谷P3369 【模板】普通平衡树(Treap/SBT)

    洛谷P3369 [模板]普通平衡树(Treap/SBT) 平衡树,一种其妙的数据结构 题目传送门 题目描述 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入x数 删除 ...

  3. 洛谷P4014 分配问题【最小/大费用流】题解+AC代码

    洛谷P4014 分配问题[最小/大费用流]题解+AC代码 题目描述 有 n 件工作要分配给 n 个人做.第 i 个人做第 j 件工作产生的效益为c ij. 试设计一个将 n 件工作分配给 n 个人做的 ...

  4. 洛谷P3380 二逼平衡树

    线段树+平衡树 我!又!被!卡!常!了! 以前的splay偷懒的删除找前驱后继的办法被卡了QAQ 放一个在洛谷开O2才能过的代码..我太菜了.. #include <bits/stdc++.h& ...

  5. 洛谷 P1101 单词方阵

    题目链接 https://www.luogu.org/problemnew/show/P1101 题目描述 给一n×n的字母方阵,内可能蕴含多个"yizhong"单词.单词在方阵中 ...

  6. USACO Section 1.3 题解 (洛谷OJ P1209 P1444 P3650 P2693)

    usaco ch1.4 sort(d , d + c, [](int a, int b) -> bool { return a > b; }); 生成与过滤 generator&& ...

  7. 洛谷P5069 [Ynoi2015]纵使日薄西山(树状数组,set)

    洛谷题目传送门 一血祭 向dllxl致敬! 算是YNOI中比较清新的吧,毕竟代码只有1.25k. 首先我们对着题意模拟,寻找一些思路. 每次选了一个最大的数后,它和它周围两个数都要减一.这样无论如何, ...

  8. 树链剖分模板(洛谷P3384)

    洛谷P3384 #include <bits/stdc++.h> #define DBG(x) cerr << #x << " = " < ...

  9. NOIP2017提高组Day1T3 逛公园 洛谷P3953 Tarjan 强连通缩点 SPFA 动态规划 最短路 拓扑序

    原文链接https://www.cnblogs.com/zhouzhendong/p/9258043.html 题目传送门 - 洛谷P3953 题目传送门 - Vijos P2030 题意 给定一个有 ...

随机推荐

  1. MySql5.7 json查询

    create table t1(name json); insert into t1 values(’ { “hello”: “song”, “num”: 111, “obj”: { “who”: “ ...

  2. timeout超时时长优化和hystrix dashboard可视化分布式系统

    在生产环境中部署一个短路器,一开始需要将一些关键配置设置的大一些,比如timeout超时时长,线程池大小,或信号量容量 然后逐渐优化这些配置,直到在一个生产系统中运作良好 (1)一开始先不要设置tim ...

  3. Java File类 mkdir 不能创建多层目录

    File f = new File("/home/jp/Upload"); if ((!f.exists()) || (!f.isDirectory())) {boolean re ...

  4. React 语法

    1.JavaScript XML JSX = JavaScript XML,是一个看起来很像 XML 的 JavaScript 语法扩展.JSX 不是模板,是JS语法本身,有更多的扩展.JSX 组件一 ...

  5. 2019 梦网科技java面试笔试题 (含面试题解析)

      本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.梦网科技等公司offer,岗位是Java后端开发,因为发展原因最终选择去了梦网科技,入职一年时间了,也成为了面 ...

  6. 【开发工具】- Atom下载及安装

    原文地址:https://www.jianshu.com/p/c112f024e0ab

  7. Exception和RuntimeException区别

    Exception:强制性要求用户必须进行处理: RuntimeException:是Exception的子类,由用户选择是否进行处理:

  8. js 将数字转换成中文大写

    //完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五. const toChinesNum = ...

  9. 【转】【Salesforce】salesforce 零基础学习(十七)Trigger用法

    看本篇之前可以相应阅读以下Trigger相关文章: 1.https://developer.salesforce.com/page/Trigger_Frameworks_and_Apex_Trigge ...

  10. Android为TV端助力之解析序列话的JSON

    解析json时报错default constructor not found. class............. 比如 public class MediaRepBean implements P ...