public class Solution
{
private string M1(int A, int B)
{
StringBuilder sb = new StringBuilder();
int groupA = A / ;
int freeA = A % ;
int temp = groupA;
int distance = B - groupA;
for (int i = ; i < groupA; i++)
{
if (temp > )
{
sb.Append("AA");
if (distance > && B > )
{
sb.Append("BB");
B = B - ;
}
else if (distance <= && B > )
{
sb.Append("B");
B = B - ;
}
else//distance < 0
{
sb.Append("");
}
distance--;
}
else
{
sb.Append("A");
}
temp--;
}
if (freeA != )
{
sb.Append("A");
}
while (B > )
{
sb.Append("B");
B--;
}
return sb.ToString();
} private string Change(string str)
{
str = str.Replace("A", "C");
str = str.Replace("B", "A");
str = str.Replace("C", "B");
return str;
} public string StrWithout3a3b(int A, int B)
{
var result = "";
if (A >= B)
{
result = M1(A, B);
}
else
{
result = M1(B, A);
result = Change(result);
}
return result.ToLower();
}
}

leetcode984的更多相关文章

  1. [Swift]LeetCode984. 不含 AAA 或 BBB 的字符串 | String Without AAA or BBB

    Given two integers A and B, return any string S such that: S has length A + B and contains exactly A ...

随机推荐

  1. 开始使用GoJS

    GoJS是一个用于实现交互式图表的JavaScript库.本页将向您展示使用GoJS的必要条件. 由于GoJS是一个依赖于HTML5功能的JavaScript库,因此您需要确保您的页面声明它是一个HT ...

  2. Android Studio 小技巧

    请参照http://blog.csdn.net/jdsjlzx/article/details/50689047 个人认为较有用: 30

  3. Android开发之五大布局篇

    一.Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 相对布局(RelativeLayout):相对其它组件的布局方式. 绝对布局 ...

  4. 文档碎片及xml讲解

    1.将数据渲染到页面的几种方式 1.字符串拼接 2.dom循环 3.模板 4.文档碎片 字符串拼接: 优势:只进行一次dom回流 缺点:原有的dom事件会消失 案例分析:原有list中有3个li,并且 ...

  5. jQuery的效果

    jQuery的效果也是极其强大的 学习方法的三要素   功能 参数 返回值 fadeout() 由可见过渡到隐藏 三个参数 第一个参数:毫秒(过渡的周期) 第二个参数:匀速(过渡的效果) 第三个参数: ...

  6. Socket传输简单的信息以及粘包问题的解决

    一.简单的socket程序——传输简短文字: # -*- coding: utf-8 -*- # -*- Author: WangHW -*- import socket whw_client = s ...

  7. [UE4]宏

    宏和函数的区别 “展开”就是直接将宏代码直接复制粘贴替换到所有使用当前宏的地方.这个跟C++中的宏是一样的. 1.宏可以有多个入口,多个出口,函数只有一个入口,一个出口 2.宏的参数可以使用“Exec ...

  8. [UE4]蓝图:重写父类时调用父类方法

    右键重写的方法选择“Add call to parent function” 一定要善用这个功能,实现原有父类功能的同时实现子类特别的功能.

  9. Android拨打接听电话自动免提

    权限: <uses-permission android:name="android.permission.READ_PHONE_STATE"/> <uses-p ...

  10. MySql 引擎

    存储引擎: 存储引擎就是指表的类型以及表在计算机上的存储方式 它处于MySQL体系架构中Server端底层,是底层物理结构的实现,用于将数据以各种不同的技术方式存储到文件或者内存中,不同的存储引擎具备 ...