1093.Count PAT's

1093.Count PAT's

求解思路

逆序遍歷輸入字符串,記錄每個A后面T的個數,每個P后面AT的個數

C++源碼

#include<iostream>
#include<string>
using namespace std;

int main()
{
    string pat;
    int sumA = 0, sumT = 0, sumAT = 0;
    long long sumPAT = 0;
    cin>>pat;
    for(int i = pat.length() - 1; i >= 0; i--)
    {
        if(pat[i] == 'T')
        {
            sumT++;
        }
        else if(pat[i] == 'A')
        {
            sumA++;
            sumAT += sumT;
        }
        else if(pat[i] == 'P')
        {
            sumPAT += sumAT;
        }
    }
    cout<<sumPAT%1000000007<<endl;
    return 0;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容