1040 有几个PAT (25分)

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

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

输入格式:

输入只有一行,包含一个字符串,长度不超过10
​5
​​ ,只包含 P、A、T 三种字母。

输出格式:

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

输入样例:

APPAPT

输出样例:

2

作者: CAO, Peng
单位: Google
时间限制: 150 ms
内存限制: 64 MB
代码长度限制: 16 KB

#include <iostream>
using namespace std;
int main(){string input;cin>>input;long long ans = 0,number_p = 0,number_t = 0;for (int i = 0; i < input.length(); ++i)if(input[i] == 'T')number_t++;for (int i = 0; i < input.length(); ++i) {if(input[i] == 'T')number_t--;if(input[i] == 'P')number_p ++;if(input[i] == 'A'){ans += number_p * number_t;ans %= 1000000007;}}cout<<ans;return 0;
}

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

  1. Pat乙级 1040 有几个PAT

    Pat乙级1040 有几个PAT 思路 代码 题目网址 https://pintia.cn/problem-sets/994805260223102976/problems/9948052823899 ...

  2. PAT乙级 1005 继续(3n+1)猜想 (25分)

    1005 继续(3n+1)猜想 (25分) 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中 ...

  3. PAT乙级-1040 有几个PAT(多种实现)

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

  4. 【PAT乙级】1080 MOOC期终成绩 (25 分)

    题目地址 #include<bits/stdc++.h> using namespace std; int n,m,k; struct node {int a,b,c,d; string ...

  5. 【PAT乙级】1075 链表元素分类 (25 分)

    题目地址 #include<cstdio> #include<iostream> #include<map> using namespace std; const ...

  6. 【PAT乙级】1035 插入与归并 (25 分)

    题目地址 最终的精简版 #include<bits/stdc++.h> using namespace std; bool flag; vector<int>a(105,0), ...

  7. 【PAT乙级】 1010 一元多项式求导 (25 分)

    https://pintia.cn/problem-sets/994805260223102976/problems/994805313708867584 零多项式就是每个系数都是0的多项式. 最开始 ...

  8. PAT乙级|C语言|1025 反转链表 (25分)

    题目 给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转.例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4:如果 K 为 4,则输 ...

  9. PAT甲级1066 Root of AVL Tree (25分):[C++题解]建立平衡树(AVL树)

    文章目录 题目分析 题目链接 题目分析 图片来源:acwing 分析 平衡树(AVL树)是平衡二叉搜索树的简称,当然需要满足二叉搜索树的性质,左子树小于根,根小于等于右子树:然后还要满足平衡树的基本特 ...

最新文章

  1. python操作mysql的增删改查_详解使用pymysql在python中对mysql的增删改查操作(综合)...
  2. 生僻字(通信工程版)
  3. 动态分配的const对象
  4. WPF的样式(Style)继承
  5. vue的this.$set的作用
  6. 阿里小二平时和商家交流的时候,明确告知流量喜欢什么样的产品?
  7. 区块链研究生专业_滁州区块链平台技术开发专业软件公司
  8. ORA-01747: user.table.column, table.column 或列说明无效
  9. 小猿圈分享Javascript技巧(下)
  10. 修改Android手机的分辨率和屏幕密度
  11. react项目里添加支持less(无webpack.config.js如何设置
  12. python 优秀的库推荐
  13. 网站性能优化三大策略
  14. 定制MACD背离副图
  15. JAVA、PHP统一社会信用代码、身份证号算法解析验证
  16. Docker系列之五:Docker 三剑客之 Docker Swarm
  17. 字母序列号生成 A...Z..AA..ZZ....
  18. 一个屌丝程序猿的人生(五十八)
  19. 三张表,四张表怎么连接?
  20. 夯实Java基础(一)

热门文章

  1. easyexcel表头和内容居中
  2. 面试字节跳动的一点小经验
  3. HTML——微信浏览器H5页面调用微信扫一扫
  4. js 操作字符串,
  5. 几何学五大公理_几何学的五个公理是什么?
  6. java计算机毕业设计红色景点自驾游网站管理系统MyBatis+系统+LW文档+源码+调试部署
  7. 【计算理论】图灵机 ( 图灵机引入 | 公理化 | 希尔伯特纲领 | 哥德尔不完备定理 | 原始递归函数 )
  8. 任务管理器测试内存泄露
  9. 博图注册表删除方法_三菱、西门子软件安装常见出错解决方法!(干货)
  10. STM32中BOOT模式配置的作用