csharp高级练习题:字母战争 - 核打击【难度:3级】:
介绍
有战争,没有人知道 - 字母表战争!
字母隐藏在他们的核掩体.核打击打战场,杀了很多人.
任务
编写接受幸存下来的核打击battlefield
字符串,并返回字母的功能.
- 在
battlefield
串只包含小写字母,#
,[
和]
. - 核庇护由方括号表示
[]
.方括号内的字母代表的住所内的信件. - 在
# 是指一个地方的核打击打战场. 如果有至少一个
# 在战场上,住房芯片之外的所有信件.当没有任何``# 战场上,所有字母生存(但不要指望这样的场景常常;-P). - 在收容所有一定的耐用性.当2个或更多的``# 命中接近住房,住房被破坏,里面蒸发所有字母.在"靠近住所"装置在地面上的住所和下一住所之间(或开始/战场的终点).下面的样本讲清楚你.
示例
ABDE [FGH] IJK => "abdefghijk"(所有字母生存因为没有#)
AB# 德[FGH] IJK => "FGH"(所有字母外模,因为有一个#)
AB# 德[FGH] IJ#K => ""(所有字母模具,有2# 靠近shellter)
## ABDE [FGH] IJK => ""(所有字母模具,有2# 靠近shellter)
## ABDE [FGH] IJK [MN] OP => "MN"(从第二住所信生存,没有# 接近)
# AB# 德[FGH] IJK [MN] OP => "MN"(从第二住所信生存,没有# 接近)
# abde [FGH] i的#JK [MN] OP => "MN"(从第二住所信生存,只有1# 接近)
并[a]#[B]#[C] => "AC"
并[a]#B# 并[c] [d] => "d"
[A] [B] [C] => "ABC"
## 一并[a] B [C]#=> "c" 的
字母收集战争
<表边界= “0” CELLPADDING = “0” CELLSPACING = “0”>
Alphavet战争
字母表战 - 空袭 - 字母屠杀
字母表战争 - 加强屠杀
字母表战争 - 核警示
字母表战 - 禾LO loooooo道士加入战争
编程目标:
using System;
public class Kata
{
public static string AlphabetWar(string b)
{
return "oops";
}
}
测试样例:
namespace Learning {
using NUnit.Framework;
using System;
[TestFixture]
public class AlphabetWarTest
{
[Test]
public void BasicTest()
{
Assert.AreEqual("", Kata.AlphabetWar("ab#de[fgh]ij#k"));
Assert.AreEqual("", Kata.AlphabetWar("##abde[fgh]ijk"));
Assert.AreEqual("", Kata.AlphabetWar("##abde[fgh]"));
Assert.AreEqual("abdefgh", Kata.AlphabetWar("abde[fgh]"));
Assert.AreEqual("mn", Kata.AlphabetWar("##abde[fgh]ijk[mn]op"));
Assert.AreEqual("mn", Kata.AlphabetWar("#abde[fgh]i#jk[mn]op"));
Assert.AreEqual("abijk", Kata.AlphabetWar("[ab]adfd[dd]##[abe]dedf[ijk]d#d[h]#"));
最佳答案(多种解法):
更多关联题目:
csharp进阶练习题:伪装序列(II)【难度:2级】–景越C# 经典编程题库,不同难度C# 练习题,适合自学C# 的新手进阶训练
免责申明
本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars.com/
https://www.codewars.com/kata/alphabet-wars-nuclear-strike