PAT (Basic Level)1040. 有几个PAT
2016-03-10 14:53
344 查看
https://www.patest.cn/contests/pat-b-practise/1040
题目描述:
字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T);第二个PAT是第3位(P),第4位(A),第6位(T)。
现给定字符串,问一共可以形成多少个PAT?
输入格式:
输入只有一行,包含一个字符串,长度不超过105,只包含P、A、T三种字母。
输出格式:
在一行中输出给定字符串中包含多少个PAT。由于结果可能比较大,只输出对1000000007取余数的结果。
输入样例:
输出样例:
题目描述:
字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T);第二个PAT是第3位(P),第4位(A),第6位(T)。
现给定字符串,问一共可以形成多少个PAT?
输入格式:
输入只有一行,包含一个字符串,长度不超过105,只包含P、A、T三种字母。
输出格式:
在一行中输出给定字符串中包含多少个PAT。由于结果可能比较大,只输出对1000000007取余数的结果。
输入样例:
APPAPT
输出样例:
2
#include <iostream> #include <string> using namespace std; int main() { string str; cin>>str; int numP = 0; int numPA = 0; int numPAT = 0; for(int i = 0; i < str.length(); i++) { if(str[i] == 'P') ++numP; else if(str[i] == 'A') numPA = (numPA + numP) % 1000000007; else { numPAT = (numPAT + numPA) % 1000000007; } } printf("%d", numPAT); return 0; }
相关文章推荐
- (五) WebService-- WSDL 文档详解
- 开发错误记录3:问题 Error:failed to find Build Tools revision 23.0.2
- 2dx 算两个点之间的角度
- Java就业面试题大全连载1
- ionic 设置标题或菜单栏的属性
- 拖拉自定义小模块_Activity背景透明效果_多次击事件处理
- 淘宝大秒系统设计详解
- 震动和系统声音提示
- JAVA 判断一个字符串是不是一个合法的日期格式
- MathJax basic tutorial and quick reference
- Unity: C# TCP Client Server TcpListener NetworkStream UDP
- (四) WebService-- SOAP UI 工具使用
- percona-toolkit工具包的使用教程之开发类工具
- 小米Recovery线刷精灵 v1.0.0 破解版
- BootStrap-datetimepicker插件有滚动条时出现位移问题解决方案
- ps 文字处理篇
- 2dx 改变动画 ac32 速率
- C++构造函数和析构函数的总结
- linux gcc 源码安装
- Matlab 中一些符号的含义