1040 有几个PAT
来源:互联网 发布:淘宝运营专才认证入口 编辑:程序博客网 时间:2024/04/27 14:05
#include <stdio.h>
#include <string.h>
int main() {
char str[100001];
gets(str);
int numT = 0;
int numAT = 0;
int numPAT = 0;
for(int i = strlen(str) - 1; i >= 0; --i) { //从字符串后面向前遍历
if(str[i] == 'T') //碰到T,记录该T后面T的总个数(包括这个T)
++numT;
else if(str[i] == 'A') //碰到A,记录该A后面AT组合的总个数;其中包括之前统计的A后面AT的总个数加上这个A与后面全部T组合的个数(即之前统计的T的总个数)
numAT = (numAT + numT) % 1000000007;
else { //碰到P,记录该P后面PAT组合的总个数;同理
numPAT = (numPAT + numAT) % 1000000007;
}
}
printf("%d", numPAT);
return 0;
}
#include <string.h>
int main() {
char str[100001];
gets(str);
int numT = 0;
int numAT = 0;
int numPAT = 0;
for(int i = strlen(str) - 1; i >= 0; --i) { //从字符串后面向前遍历
if(str[i] == 'T') //碰到T,记录该T后面T的总个数(包括这个T)
++numT;
else if(str[i] == 'A') //碰到A,记录该A后面AT组合的总个数;其中包括之前统计的A后面AT的总个数加上这个A与后面全部T组合的个数(即之前统计的T的总个数)
numAT = (numAT + numT) % 1000000007;
else { //碰到P,记录该P后面PAT组合的总个数;同理
numPAT = (numPAT + numAT) % 1000000007;
}
}
printf("%d", numPAT);
return 0;
}
0 0
- PAT 1040 有几个PAT
- PAT 1040有几个PAT
- 1040 有几个PAT
- 1040、有几个PAT
- 1040 有几个PAT
- 1040 有几个PAT
- 1040 有几个PAT
- 1040_有几个PAT
- PAT 1040 有几个PAT(dp)
- PAT 1040 有几个PAT(运行超时)
- 有几个PAT(PAT-1040)
- PAT乙级1040 有几个PAT
- PAT-B1040. 有几个PAT
- PAT 1040. 有几个PAT
- PAT 1040.有几个PAT
- PAT B1040. 有几个PAT
- pat 1040. 有几个PAT
- PAT_乙级 1040 有几个PAT
- Android官方培训课程学习(四): 数据存储
- 167. Two Sum II - Input array is sorted
- 贪心+链——Ant Man(Codeforces Round #366 (Div. 1) B )
- 全系列nexus设备安卓7.0 Nougat NRD90M+刷机+解锁bl+安卓7.0 root教程
- 菜鸟网络工程师的成长笔记——第19天(2016.09.05)
- 1040 有几个PAT
- 利用广播监听手机解锁和锁屏的操作
- 使用shell脚本查看linux所有进程之间的结构
- 数理统计基础-相关系数
- TQ210 —— LCD
- 国内外有哪些自然语言处理的团队?
- CSS3实现一个开关按钮控件
- 如何计算时间复杂度
- 函数指针的学习