很抱歉标题,但我不知道能简要解释一下我需要做什么。
我有这个预定义的数组:
string[] SkippedAreasArray = new string[] {"A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q"};
我们可以调用每一个字母Area
。我们有一个变量NumberOfAreas
,它保存一个从 0(null) 到 17 的整数值。这个值的含义是 this。如果NumberOfAreas
= 5 那么我们有 string "A", "B", "C", "D", "E"
。如果NumberOfAreas
= 3,那么我们有"A", "B", "C"
,依此类推。该字符串始终以字母顺序开头"A"
并遵循字母顺序。
用户输入是所谓的SkippedAreas
数组。它可以包含随机字母,不能重复且在范围内A-Q
。
想法是什么 - 如果我们有SkippedAreas
数组 ="A", "C"
和NumberOfAreas
= 5,或者我们必须通过跳过字母并添加接下来的两个字母"A", "B", "C", "D", "E"
来保持NumberOfAreas
等于 5,这样就变成了 - 。"A"
"C"
NumberOfAreas
"B", "D", "E", "F", "G"
我们只能跳过已经在范围内的字母(区域),NumerOfAreas
例如,如果我们得到基本示例 when NumerOfAreas
= 5 并且字符串 is"A", "B", "C", "D", "E"
我们只能跳过这 5 个字母之一的字母。但是,通过跳过任何字母,我们打开了对下一行的访问权限,因此如果我们第一次跳过"A"
,我们可以自由地"F"
用于下一轮并且如果"F"
是用户输入字符串的一部分,SkippedAreas
那么跳过"F"
和打开是合法的"G"
。
我需要一个能够验证用户输入的算法。