• codechef AUG17 T4 Palindromic Game


    Palindromic Game Problem Code: PALINGAM

    There are two players A, B playing a game. Player A has a string s with him, and player B has string t with him. Both s and t consist only of lower case English letters and are of equal length. A makes the first move, then B, then A, and so on alternatively. Before the start of the game, the players know the content of both the strings s and t.

    These players are building one other string w during the game. Initially, the string w is empty. In each move, a player removes any one character from their respective string and adds this character anywhere (at any position) in the string w. If at any stage of the game, the string w is of length greater than 1 and is a palindrome, then the player who made the last move wins.

    If even after the game finishes (ie. when both s and t have become empty strings), no one is able to make the string w a palindrome, then player B wins.

    Given the strings s, and t, find out which of A, B will win the game, if both play optimally.

    Input

    • The first line of the input contains an integer T, corresponding to the number of test cases. The description of each testcase follows.
    • The first line of each testcase will contain the string s.
    • The second line of each testcase will contain the string t.

    Output

    For each test case, output "A" or "B" (without quotes) corresponding to the situation, in a new line.

    Constraints

    • Subtask 1 (20 points) : 1 ≤ T ≤ 500, All characters of string s are equal, All characters of string t are equal. 1 ≤ |s| = |t| ≤ 500
    • Subtask 2 (80 points) : 1 ≤ T ≤ 500, 1 ≤ |s| = |t| ≤ 500

    Example

    Input:
    3
    ab
    ab
    aba
    cde
    ab
    cd
    Output:
    B
    A
    B
    

    Explanation

    Testcase 1: If A adds 'a' to w in the first move, B can add 'a' and make the string w = "aa",

    which is a palindrome,and hence win. S

    imilarly, you can show that no matter what A plays, B can win.Hence the answer is B.

    Testcase 2: Player A moves with 'a', player B can put any of the character 'c', 'd' or 'e', Now Player A can create a palindrome by adding 'a'.

    Testcase 3: None of the players will be able to make a palindrome of length > 1. So B will win.

    —————————————————————————————————————————————

     这道题就是有两个人A和B 他们每个人有一个串

    (A先起手)每次一个人人能拿出自己串中剩余的字母中的一个加入现有串C的左边或者右边

    当C变成一个回文串的时候游戏结束 使这个串变成回文串的一方胜利

    我们考虑A起手 如果他下了一个B有的字母 那么无疑B会胜利

    如果他下了一个B没有的字母 且这个字母他有两个 那么他一定胜利

    不然 如果B下的这个字母A有那么A会胜利 不然不论如何下这个串都不会成为回文串

    那么平局下 按提议B会胜利

  • 相关阅读:
    permute
    ind2sub
    randi( )函数--MATLAB
    ABAQUS复合材料
    matlab中fix函数,floor函数,ceil函数
    在windows10中卸载软件和取消开机启动程序
    在linux的tomcat中配置https及自动跳转
    解决ubuntu无法远程连接
    谷歌浏览器 插件安装配置Momentum chrome
    0903——元类
  • 原文地址:https://www.cnblogs.com/lyzuikeai/p/7301247.html
Copyright © 2020-2023  润新知