PAT BASIC 1003
来源:互联网 发布:美国人用淘宝吗 编辑:程序博客网 时间:2024/05/17 06:13
注意点
1、其实就是要求P之前的A的数量乘以PT之间A的数量等于T之后A的数量
2、注意PT中间等于零的情况
3、注意PT两个字母:必须P在T之前出现,各有且仅有一次
代码
#include<iostream>#include<string>using namespace std;void checkPAT();void checkPAT(){ string str; int pos_P = -1, pos_T = -1, state = 0; int i, j, len; int num[3]; cin >> str; len = str.size(); num[0] = 0; num[1] = 0; num[2] = 0; for (i = 0; i < len; i++) { if (str[i] != 'P' && str[i] != 'A' && str[i] != 'T') { cout << "NO\n"; return; } if (str[i] == 'A') num[state]++; else if (str[i] == 'P') { if (pos_P != -1) { cout << "NO\n"; return; } pos_P = i; state++; } else if (str[i] == 'T') { if (pos_T != -1) { cout << "NO\n"; return; } pos_T = i; state++; } } if (pos_P == -1 || pos_T == -1) { cout << "NO\n"; return; } if (pos_P >= pos_T) { cout << "NO\n"; return; } if (num[1] == 0) { cout << "NO\n"; return; } if (num[0] * num[1] == num[2]) cout << "YES\n"; else cout << "NO\n"; return;}int main(){ int n, i; cin >> n; for (i = 0; i < n; i++) checkPAT(); //while (1) //{ } return 0;}
0 0
- pat(basic level) 1003
- PAT basic 1003
- PAT Basic 1003
- PAT BASIC 1003
- PAT BASIC 1003
- PAT basic 1003
- PAT basic 1003_2
- 浙大 pat Basic Level 1003
- PAT (Basic Level) Practise 1003
- PAT Basic
- PAT basic 1003 : 我要通过
- PAT Basic Level 1003:我要通过!
- PAT(basic level) 1003 我要通过
- PAT乙级(Basic Level)真题1003
- PAT乙级(Basic)题库---1003
- PAT(Basic Level)1003 我要通过!
- PAT (Basic Level) Practise
- PAT Basic 1001
- 联想T440怎么把原装Win8或Win10换成Win7系统
- 详解SpringMVC请求的时候是如何找到正确的Controller
- Visual Studio项目模板与向导开发
- 博为峰JavaEE技术文章 ——MyBatis Mapper ResultMap
- 机器学习算法——集成学习
- PAT BASIC 1003
- Object类中的五种方法
- 删除所有子物体的bug
- bzoj1008 [HNOI2008]越狱
- opencv识别步骤和图片装载
- Verilog
- 虚拟机安装(初稿)
- TeamView11试用版到期转长期免费版
- python~ from string import Template