zoukankan      html  css  js  c++  java
  • PAT 乙级 1040 有几个PAT (25分)

    题目:

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

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

    输入格式:

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

    输出格式:

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

    输入样例:

    APPAPT
    
     

    输出样例:

    2

    思路:pat由p a t 组成,遍历累加 pa的数量,遇到t就能组成pat;最后根据条件判断是否取余
    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        string str;
        cin >> str;
        int count = 0, countp = 0, coutap = 0;
        for (int i = 0; i < str.size(); i++)
        {
            switch (str[i])
            {
            case 'P':
                countp++;
                break;
            case 'A':
                coutap += countp;
                break;
            default:count += coutap;
            }
            if (count > 1000000007)
                count %= 1000000007;
        }
        printf("%d", count);
        return 0;
    }
    //测试点2是一个都不符合,sum=0;
    
    
    


  • 相关阅读:
    no-return-assign (Rules) – Eslint 中文开发手册
    CSS 字体图标
    CSS 元素的显示与隐藏
    CSS 定位
    CSS 清除浮动
    CSS 浮动
    java 运算符
    Java 初识
    CSS3 完善盒模型
    CSS 盒子模型
  • 原文地址:https://www.cnblogs.com/zongji/p/13291853.html
Copyright © 2011-2022 走看看