代码改变世界

codelity

2024-06-12 14:31  qgbo  阅读(1)  评论(0编辑  收藏  举报
source:    https://app.codility.com/programmers/trainings/5/three_letters/
using System;
using System.Text;
// you can also use other imports, for example:
// using System.Collections.Generic;
// you can write to stdout for debugging purposes, e.g.
// Console.WriteLine("this is a debug message");

class Solution {
    public string solution(int A, int B) {
        // Implement your solution here
        StringBuilder str = new StringBuilder(A+B);
        if(A>B)
        {
            str.Append("a");
            A--;
        }
        else if(B!=0)
        {
            str.Append("b");
            B--;
        }

        if(A>B)
        {
            str.Append("a");
            A--;
        }
        else if(B!=0)
        {
            str.Append("b");
            B--;
        }
        
        if(A==0 && B==0)
        {
            return str.ToString();
        }

        int i =1;
        while(true)
        {
            if(str[i] =='a' && str[i-1] =='a')
            {
                str.Append("b");
                B--;
            }
            else  if(str[i] =='b' && str[i-1] =='b')
            {
                str.Append("a");
                A--;
            }
            else  if(A>=B)
            {
                str.Append("a");
                A--;
            }
            else
            {
                str.Append("b");
                B--;
            }
            if (A==0 && B==0)
            {
                return str.ToString();
            }
            i++;
        }
    }
}