csharp基础练习题:举手【难度:1级】:

假设你有代表3人整数数组,每个位置代表一个人,每个位置的值可以是唯一的0,1,或2,其表示该人已提出手的数量.

如果我们现在在这第一步,第一个人提出了一个手,在接下来的步骤提出了他另一只手,到了第三步低双手,并在四点开始再次的序列.第二个人进行同样的动作为先,但每当第一低相送.也就是说,提出了一个手的第三步,另一方面在第六步,并倒在第九双手.第三人完成同样的动作,每次第二低的人双手.

你的任务是,在给定数目的步骤(一个或多个> = 0)与每个人的最终表示返回的数组.

EJ.你应该返回给定2步{2,0,0}
    你应该返回给定的6个步骤{0,2,0}

编程目标:

using System;
public static class Hands
{
  public static int[] GetPositions(int s)
  {
    // your code
    return null;
  }  
}


测试样例:

using NUnit.Framework;
using System;
[TestFixture]
public class PositionTest
{
  [Test]
  public void Test1() {
    Assert.AreEqual(new int[] { 2, 1, 0 },Hands.GetPositions( 5 ));
  [Test]
  public void Test2() {
    Assert.AreEqual(new int[] { 0, 2, 0 },Hands.GetPositions( 33 ));
  }
  [Test]
  public void Test3() {


最佳答案(多种解法):

点击查看答案

更多关联题目:

csharp进阶练习题:完成该模式#8 - 数字金字塔【难度:2级】–景越C# 经典编程题库,不同难度C# 练习题,适合自学C# 的新手进阶训练

免责申明

本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars/
https://www.codewars/kata/hands-up

更多推荐

csharp基础练习题:举手【难度:1级】--景越C#经典编程题库,不同难度C#练习题,适合自学C#的新手进阶训练