Alpha and Beta

news/2025/1/15 18:18:29/

Alpha and Beta

Time Limit:1000MS  Memory Limit:65536K
Total Submit:491 Accepted:62

Description

Alpha and Beta are best friends and make company with each other all the time. 
There is a time when a game called “make pairs” gains much popularity. Alpha and Beta are very fond of it and like to invite you to play with them. 
Given a string, which is simply composed of either A or B, they want to know how many AB pairs can Alpha and Beta find in that string. Can you help them? 
A pair is legal if and only if A appears at first, and whether B is near to A is not required. In other words, B makes pair with A which is nearest before B, and they both can be used only once. 

Input

There are a series of strings. The length of each string is less than 1000.

Output

For each case, if there is none legal pair that they can find, print -1. Otherwise, print the number of them. 
Please note the output format. 

Sample Input

BA
AABB
BAB

Sample Output

Case #1: -1
Case #2: 2
Case #3: 1
题意:给定一个只含有A和B的字符串,问可以配对多少组A...B,若某A和某B配对以后则不可以再和别的B配对。

解法:因为要求A在B的前面,所以我们只需从头遍历一遍,找几个变量N记录A出现的次数,每出现一次A就让N自增一次,当出现B的时候,就判断一下前面有没有多余的A剩下,如果有那么消耗一个A,让N自减一次,然后答案ANS+1,如果没有A剩下了那么很遗憾,这个B就不能配对了。

AC代码:

//************************************************************************//
//*Author : Handsome How                                                 *//
//************************************************************************//
//#pragma comment(linker, "/STA	CK:1024000000,1024000000")
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <algorithm>
#include <sstream>
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <ctime>
using namespace std;
//----------------------------------------------------------
int a;
int main()
{char s[2000];int kase = 0;while(scanf("%s",s)!=EOF){a=0;int ans = 0;int len = strlen(s);for(int i=0;i<len;i++){if(s[i]=='A')a++;else if(a>0){ans++;a--;}}if(ans==0)ans=-1;printf("Case #%d: ",++kase);printf("%d\n",ans);}return 0;
}




http://www.ppmy.cn/news/186531.html

相关文章

Alpha、Beta、RC、GA版本的区别

Alpha&#xff1a;是内部测试版,一般不向外部发布,会有很多Bug.一般只有测试人员使用。 Beta&#xff1a;也是测试版&#xff0c;这个阶段的版本会一直加入新的功能。在Alpha版之后推出。 RC&#xff1a;(Release Candidate) 顾名思义么 ! 用在软件上就是候选版本。系统平台上…

Alpha-expansion and Alpha-beta-swap Algorithm Flow

简介 主题&#xff1a;采用图割方法解决视觉问题中常见的能量最小化问题 主要参考文献&#xff1a;Fast Approximate Energy Minimization via Graph Cuts&#xff0c; Cornell University, Boykov, Veksler, Zabih, IEEE PAMI 23(11), pp 1222ff, 2001 在诸多视觉图像问题中…

Alpha 1S

Alpha 1S拥有16个关节自由度&#xff0c;让它在打拳击、踢足球等体育类项目上也毫不示弱。值得一提的是&#xff0c;这些小机器人之间的拳击赛甚至组团PK的足球赛&#xff0c;更是各大展览或晚会上的王牌节目。 作为人型机器人&#xff0c;优必选智能人形机器人的外形与人类接近…

移动端Alpha Test费性能的原因

SwordMaster关注 0.072018.03.01 18:31:35字数 393阅读 4,841 调查了下现在移动端的GPU厂商&#xff0c;主要有Imagenation technology公司的Power VR 系列 高通的骁龙系列&#xff0c;Mali的MP系列。 各品牌手机使用的GPU 苹果手机->Power VR 魅族->Power VR 三星…

Alpha和Beta测试的区别

AutoRunner是一款自动化测试工具。AutoRunner可以用来执行重复的手工测试。主要用于&#xff1a;功能测试、回归测试的自动化。它采用数据驱动和参数化的理念&#xff0c;通过录制用户对被测系统的操作&#xff0c;生成自动化脚本&#xff0c;然后让计算机执行自动化脚本&#…

[转载]Alpha、Beta、RC、GA版本的区别

最近在搞llvm&#xff0c;发现很多个版本不同的名称。便好奇各个名称的意义&#xff0c;在此记录一下 Alpha&#xff1a;是内部测试版,一般不向外部发布,会有很多Bug.一般只有测试人员使用。 Beta&#xff1a;也是测试版&#xff0c;这个阶段的版本会一直加入新的功能。在Alph…

beta版和alpha版

外部测试版的意思。 软件会出现三种版本 1.alpha内部测试版本&#xff0c;极不稳定&#xff0c;一般也不会出现的公众视线&#xff0c;仅供内部测试人员测试用。 2.beta公共测试版&#xff0c;就是对外发布软件的测试版&#xff0c;收集公众的意见和建议。 3.就是正式版了&…