字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T)。

现给定字符串,问一共可以形成多少个 PAT

输入格式:

输入只有一行,包含一个字符串,长度不超过1,只包含 PAT 三种字母。

输出格式:

在一行中输出给定字符串中包含多少个 PAT。由于结果可能比较大,只输出对 1000000007 取余数的结果。

输入样例:

APPAPT

输出样例:

2
#include<cstdio>
#include<cstring>
const int maxn = 100010;
const int MOD = 1000000007;
char str[maxn];
int leftNumP[maxn] = {0};int main(){scanf("%s",str);int len = strlen(str);for(int i = 0; i < len; i++){if(i > 0){leftNumP[i] = leftNumP[i - 1];}if(str[i] == 'P'){leftNumP[i]++;}}int ans = 0,rightNumT = 0;for(int i = len; i >= 0; i--){if(str[i] == 'T') rightNumT++;if(str[i] == 'A') ans = (ans + rightNumT * leftNumP[i]) % MOD;}printf("%d",ans);return 0;
} 

转载于:https://www.cnblogs.com/wanghao-boke/p/10337722.html

1040 有几个PAT (25 分相关推荐

  1. C++学习之路 | PTA乙级—— 1040 有几个PAT (25 分)(精简)

    1040 有几个PAT (25 分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位§,第 4 位 ...

  2. 1040 有几个PAT (25 分)

    1040 有几个PAT (25 分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位(P),第 ...

  3. 1040 有几个PAT (25 分) -- 测试点3 测试点4

    1040 有几个PAT (25 分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位(P),第 ...

  4. PAT 乙级 1040 有几个PAT (25分)

    1040 有几个PAT (25分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位§,第 4 位( ...

  5. 1040 有几个PAT (25 分)

    1040 有几个PAT (25 分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位§,第 4 位 ...

  6. 【PAT】乙级 1040 有几个PAT (25 分) c++

    1040 有几个PAT (25 分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位§,第 4 位 ...

  7. 1040 有几个PAT (25分)——18行代码AC

    立志用更少的代码做更高效的表达 PAT乙级最优题解-->传送门 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T):第二个 P ...

  8. 1040 有几个PAT (25分)

    字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T). 现 ...

  9. 【PAT乙级】1040 有几个PAT (25 分)

    题目地址 #include<bits/stdc++.h> using namespace std; const int N=1e5+10; const int mod=1e9+7; int ...

  10. 1153 Decode Registration Card of PAT (25分)

    1153 Decode Registration Card of PAT (25分) 题意: 给出一组学生的准考证号和成绩 准考证号组成为:考试等级(TAB),考场号(从101到999),考试日期(y ...

最新文章

  1. copy,mutableCopy,retain区别
  2. 计算机学校推荐专科,专科计算机专业学校推荐
  3. 服务启动不了,显示 config 异常的问题排查
  4. STM32H743+CubeMX-学习FDCAN控制器上的TxFIFO
  5. DWR3.0 dwr 返回值(数组,集合,Map)
  6. 使用go制作微服务数据计算
  7. c 程序设计语言西电科大,西安电子科技大学
  8. Mysql-savepoint
  9. 淘宝退款崩溃;马云预言成真;谷歌推新API | 极客头条
  10. Detour hook库x64编译
  11. 线性代数学习之对称矩阵与矩阵的SVD分解
  12. 整理了18个可以免费学习编程的网站
  13. (已解决)INSTALL_FAILED_CONFLICTING_PROVIDER虚拟机安装失败错误
  14. android 11.0禁用电源键(屏蔽关机短按长按事件)
  15. working directory is not part of a module
  16. 笔记十五:研发管理者如何激励他人
  17. SpringCloudAlibaba使用Nacos时@Value无法读取到值
  18. java wate_Water.java
  19. ffmpeg调整缩放裁剪视频的基础知识(转)
  20. Win7环境下opensuse13.1与SLED 11 sp3的硬盘安装

热门文章

  1. C语言 · 芯片测试
  2. linux里的进程简介
  3. 解决git clone报错SSL certificate problem
  4. OpenFire源码学习之十九:在openfire中使用redis插件(上)
  5. 由一次代码优化想到的Js 数据类型
  6. Pocket PC/Smartphone软件安装包之制作DIY
  7. epic怎么添加本地游戏_游戏日报:原神公测无法上架多家安卓渠道;Epic投资布局游戏UGC平台...
  8. Matlab看跌期权二叉树,欧式期权二叉树MATLAB程序
  9. 怎么让员工服从管理_为什么现在的员工执行力和服从性越来越差,管理一严格就辞职?...
  10. android音量图标不见了,电脑声音图标不见了如何解决?