51Testing软件测试论坛

标题: PAT 乙级 1003 我要通过,卡在第 0 测试点了。请帮看一下 [打印本页]

作者: 测试积点老人    时间: 2021-10-25 10:20
标题: PAT 乙级 1003 我要通过,卡在第 0 测试点了。请帮看一下
下面是我的代码。想不到什么测试用例了。
#include<stdio.h>
int main(){
int n,cnt1,cnt2,cnt3,p,t,b;
char c;
  1. scanf("%d\n",&n);
  2. for (int i=1;i<=n;i++) {
  3.     p=b=t=1;
  4.     cnt1=cnt2=cnt3=0;
  5.     while (scanf("%c",&c)&&c!='\n') {
  6.         if (c!='P'&&c!='A'&&c!='T') {
  7.             printf("NO\n");
  8.             b=0;
  9.             break;
  10.         }
  11.         if (c=='P') {
  12.             p--;
  13.         } else if (c=='T') {
  14.             t--;
  15.         }
  16.         if (c!='P'&&p==1) {
  17.             cnt1++;
  18.         }
  19.         if (c!='T'&&t==1) {
  20.             cnt2++;
  21.         }
  22.         cnt3++;
  23.    }
  24.     if (b==1) {
  25.         if ((cnt1*(cnt2-cnt1-1)==(cnt3-cnt2-1))&&cnt2-cnt1-1>0&&p==0&&t==0&&cnt2>cnt1) {
  26.             printf("YES\n");
  27.     } else {
  28.             printf("NO\n");
  29.         }
  30.     }
  31. }
复制代码



作者: 海海豚    时间: 2021-10-26 09:21
https://ask.csdn.net/questions/843419  看下这个
作者: qqq911    时间: 2021-10-26 10:41
等价类划分试试
作者: 郭小贱    时间: 2021-10-26 15:50
可以参考这里的几个方案尝试下呢 https://ask.csdn.net/questions/843419




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2