PAT Basic 1003

本文详细解析PAT基础题1003,通过实例探讨解题思路和算法实现,帮助读者理解并掌握相关编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<stdio.h>

int main() {
	int n ;
	char c;
	scanf("%d",&n);
	getchar();//清空缓存区('\n')
	
	//计数
	for (int i = 0; i < n; i++) {
		int a[3] = { 0,0,0 };
		int flag = 1;
		int pos = 0;

		while ((c = getchar()) != '\n')//另一种写法,是写入字符串,直到'\0'
		{//这个循环中,利用“位置”,记录三种量
			if (c == 'A') a[pos]++;
			else if (c == 'P' && pos == 0)pos++;
			else if (c == 'T' && pos == 1)pos++;
			else flag = 0;
		}
		if (a[0] * a[1] == a[2] && a[1]&&pos==2&&flag)
			printf("YES\n");
		else
			printf("NO\n");
	}
     return 0;
}

具体待整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值