一支彩色铅笔 2022-04-10 13:55 采纳率: 100%
浏览 38
已结题

PAT 乙级1003 测试点四出错 20分拿了18分

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

#include
using namespace std;
#include
#include

int startA(string a)
{
for (int i = 0; i < a.size(); i++)
{
if (a[i] == 'P')
{
return i;
}
}
}

int middleA(string a, int b)
{
int j = 0;
for (int i = (b + 1); i < a.size(); i++)
{
if (a[i] == 'T')
{
return j;
}
j++;
}
}

bool check(string a)
{
for (int i = 0; i < a.size(); i++)
{
if (a[i] != 'P' && a[i] != 'A' && a[i] != 'T')
{
return false;
}
}
return true;

}

int main()
{
int n;
cin >> n;
vector V;
for (int j = 1; j <= n; j++)
{
string temp;
cin >> temp;
V.push_back(temp);
}

for (vector<string>::iterator it = V.begin(); it != V.end(); it++)
{
    int a = startA((*it));
    /*cout << "前面A有"<<a << endl;*/

    if (check((*it)))
    {
   
    int mid=middleA((*it), a);
    /*cout <<"中间A有"<< mid << endl;*/
    if (mid == 0)
    {
        cout << "NO" << endl;
        continue;
    }
    if (a * mid == ((*it).size() - (a + mid + 2)))
    {
        cout<<"YES"<<endl;
    }
    else
    {
        cout << "NO" << endl;
    }

    }
    

    else
    {
        cout << "NO" << endl;
    }

}



return 0;

}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

给我显示测试点四不正确,测试的结果都是对的,我这边哪里有问题?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 4月18日
    • 创建了问题 4月10日

    悬赏问题

    • ¥15 react-diff-viewer组件,如何解决数据量过大卡顿问题
    • ¥20 遥感植被物候指数空间分布图制作
    • ¥15 安装了xlrd库但是import不了…
    • ¥20 Github上传代码没有contribution和activity记录
    • ¥20 SNETCracker
    • ¥15 数学建模大赛交通流量控制
    • ¥15 为什么我安装了open3d但是在调用的时候没有报错但是什么都没有发生呢
    • ¥50 paddleocr最下面一行似乎无法识别
    • ¥15 求某类社交网络数据集
    • ¥15 靶向捕获探针方法/参考文献