A. Secret Sport
time limit per test
3 seconds
memory limit per test
512 megabytes
input
standard input
output
standard output
Let's consider a game in which two players, A and B, participate. This game is characterized by two positive integers, � and �.
The game consists of sets, and each set consists of plays. In each play, exactly one of the players, either A or B, wins. A set ends exactly when one of the players reaches � wins in the plays of that set. This player is declared the winner of the set. The players play sets until one of them reaches � wins in the sets. After that, the game ends, and this player is declared the winner of the entire game.
You have just watched a game but didn't notice who was declared the winner. You remember that during the game, � plays were played, and you know which player won each play. However, you do not know the values of � and �. Based on the available information, determine who won the entire game — A or B. If there is not enough information to determine the winner, you should also report it.
Input
Each test contains multiple test cases. The first line contains a single integer � (1≤≤104)(1≤�≤104) - the number of test cases. The description of the test cases follows.
The first line of each test case contains an integer � (1≤≤20)(1≤�≤20) - the number of plays played during the game.
The second line of each test case contains a string � of length �, consisting of characters A and B. If =��=A, it means that player A won the �-th play. If =��=B, it means that player B won the �-th play.
It is guaranteed that the given sequence of plays corresponds to at least one valid game scenario, for some values of � and �.
Output
For each test case, output:
Example
input
Copy
7
5
ABBAA
3
BBB
7
BBAAABA
20
AAAAAAAABBBAABBBBBAB
1
A
13
AAAABABBABBAB
7
BBBAAAA
output
Copy
A B A B A B A
Note
In the first test case, the game could have been played with parameters =3�=3, =1�=1. The game consisted of 11 set, in which player A won, as they won the first 33 plays. In this scenario, player A is the winner. The game could also have been played with parameters =1�=1, =3�=3. It can be shown that there are no such � and � values for which player B would be the winner.
In the second test case, player B won all the plays. It can be easily shown that in this case, player B is guaranteed to be the winner of the game.
In the fourth test case, the game could have been played with parameters =3�=3, =3�=3:
In total, player B was the first player to win 33 sets. They are declared the winner of the game.
#include
using namespace std;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
scanf("%d",&n);
string s;
cin>>s;
printf("%c\n",s[n-1]);
}
return 0;
}
1.官方题解
2.赛时rank 1代码
1.题目的意思有点难懂,英文要一个一个单词慢慢看,仔细去理解英文句子背后的意思,这个题目的意思是说,A和B两个人进行一场比赛,比赛有多个回合(sets),每一个回合有多场(plays),一个回合结束的标志是某一个人赢得X场(plays),某一个人赢得Y个回合,整个比赛结束
2.输入一个数字n,表示总共进行了多少场比赛,然后输入一个字符串,表示每一场比赛的胜利者。
3.我们最后需要输出谁是最终的胜利者,A/B/?,问号表示不能确定谁是最终的胜利者。
4.最后一场的胜利者就是最终的胜利者,因为假设最后一场不能决定胜负,就不会进行最后一场比赛,所以说,代码非常简单,输出最后一场的胜利者即可,也就是字符串的最后一个字符