投入就放过 发表于 2022-3-14 21:33:55

c 语言

#include <stdio.h>
#include <string.h>
int main(void)
{
        int i,n;
        char arr;
        int len,lp,lt,cp=0,ct=0,err=0;    //怎么这个声明放在这和放在scanf上面一行
        while(n--)
        {
                scanf("%s",arr);             //这个scanf这里效果就不一样呢,运行结果也不一样
                len=strlen(arr);

                               for(i=0;i<len;i++){
                        if(arr=='P'){
                                cp++;
                                lp=i;
                        }
                        else if(arr=='T'){
                                ct++;
                                lt=i;
                        }
                        else if(arr!='A'){
                                err++;
                        }
                }

               
                if(err!=0||ct!=1||cp!=1||lt-lp<=1){
                        printf("NO\n");
                        continue;
                }

       
                int x=lp,y=lt-lp-1,z=len-lt-1;
                if(x*y==z){
                        printf("YES\n");
                }
                else{
                        printf("NO\n");
                }
        }
       
        return 0;
}

wp231957 发表于 2022-3-14 21:42:32

一个是循环里,一个是循环外,能一样吗
自己用心里面默默的跑一下就知道了

投入就放过 发表于 2022-3-14 22:50:59

wp231957 发表于 2022-3-14 21:42
一个是循环里,一个是循环外,能一样吗
自己用心里面默默的跑一下就知道了

大意了,没有更新{:10_266:}
页: [1]
查看完整版本: c 语言