“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:
P、 A、 T这三种字符,不可以包含其它字符;xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串;aPbTc 是正确的,那么 aPbATca 也是正确的,其中 a、 b、 c 均或者是空字符串,或者是仅由字母 A 组成的字符串。现在就请你为 PAT 写一个自动裁判程序,判定哪些字符串是可以获得“答案正确”的。
输入格式:
每个测试输入包含 1 个测试用例。第 1 行给出一个正整数 n (≤10),是需要检测的字符串个数。接下来每个字符串占一行,字符串长度不超过 100,且不包含空格。
输出格式:
每个字符串的检测结果占一行,如果该字符串可以获得“答案正确”,则输出 YES,否则输出 NO。
输入样例:
- 10
- PAT
- PAAT
- AAPATAA
- AAPAATAAAA
- xPATx
- PT
- Whatever
- APAAATAA
- APT
- APATTAA
-
输出样例:
- YES
- YES
- YES
- YES
- NO
- NO
- NO
- NO
- NO
- NO

- #include
- #include
- #include
- //检验一:是否为空,是否只包含P,T,A,并且P,T均只有一个
- int check_1(char *str)
- {
- int len = strlen(str);
- if(len == 0)
- {
- return 0;
- }
- int p=0,t=0;
- for(int i =0;i
- {
- if(str[i] != 'P'&&str[i] != 'A'&&str[i] != 'T')
- {
- return 0;
- }
- if(str[i] == 'P')
- {
- p++;
- }
- if(str[i] == 'T')
- {
- t++;
- }
- }
- if(p==t&&p==1)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
-
- int main()
- {
- //输入数据n
- int n = 0;
- scanf("%d",&n);
- //输入n个字符串
- char str_arr[n][1001];
- for(int i =0;i
- {
- scanf("%s",str_arr[i]);
- }
- //判断是否通过
- int *result = (int*)malloc(n*sizeof(int));
- for(int j = 0;j
- {
- //第一轮检验
- if(check_1(str_arr[j]))
- {
- result[j] = 1;
- }
- else
- {
- result[j] = 0;
- }
- }
- for(int q = 0;q < n;q++)
- {
- if(result[q])
- {
- //第二轮检验
- int len = strlen(str_arr[q]);
- int x=0,y=0,z=0;
- int m=0,n,p;
- for(;m
'P';m++) - {
- x++;
- }
- n = m+1;
- for(;n
'T';n++) - {
- y++;
- }
- p = n+1;
- for(;p
- {
- z++;
- }
- if(y <=0)
- {
- result[q] = 0;
- }
- else
- {
- if(z / y == x)
- {
- result[q] = 1;
- }
- else
- {
- result[q] = 0;
- }
- }
- }
- }
- //输出
- for(int k =0;k
- {
- if(result[k])
- {
- if(k != (n-1))
- {
- printf("YES\n");
- }
- else
- {
- printf("YES");
- }
- }
- else
- {
- if(k != (n-1))
- {
- printf("NO\n");
- }
- else
- {
- printf("NO");
- }
- }
- }
- return 0;
- }
-
相关阅读:
jupyter使用教程及python语法基础
解决error: invalid conversion from ‘unsigned char‘ to ‘unsigned char*‘
泡泡玛特,难成“迪士尼”
Halon 模板匹配流程
俩表关联更新
读高性能MySQL(第4版)笔记17_复制(下)
PLC-Recorder离线分析软件Ana里为什么不能显示变量的编号?
Protobuf compiler version 3.19.1 doesn‘t match library version 3.0.0
数独·12中解法·anroid 数独小游戏·休闲益智小游戏
Due to a bug fix in https://github.com/huggingface/transformers/pull/28687
-
原文地址:https://blog.csdn.net/2303_76295261/article/details/133466473