最近几天没什么事,偶然看见csdn上面有高效俱乐部挑战题就做了一下
要求及题意描述:
一个小女孩正在用左手手指数数,从1数到n。她从拇指算作1开始数起,然后,食指为2,中指为3,无名指为4,小指为5。接下来调转方向,无名指算作6,中指为7,食指为8,大拇指为9,如此反复。问最后会停在那个手指上?用编号1、2、3、4、5依次表示大拇指、食指、中指、无名指、小指。 输入格式: 输入多组数据。每组数据占一行,只包含一个整数n(1<=n<=1000000000)。 输出格式: 每组数据占一行,只包含一个介于1和5之间的整数,表示最后停留的手指。
package com.junl.scott.goldenfulantumn;
import java.util.ArrayList;
import java.util.List;
public class OneCount
{
public static void main(String[] args)
{
List<Integer> resultList = new ArrayList<Integer>();
resultList = OneCount.getResult(OneCount.initNumber().getRealNumber());
for (Integer number : resultList)
{
System.out.println(number);
}
}
public static NumberCount initNumber()
{
NumberCount numberCount = new NumberCount();
List<Integer> numberList = new ArrayList<Integer>();
numberList.add(10);
numberList.add(5);
numberList.add(2);
numberList.add(4);
numberList.add(102);
numberList.add(101);
numberList.add(98);
numberCount.setNumberOfNumber(7);
numberCount.setRealNumber(numberList);
return numberCount;
}
public static List<Integer> getResult(List<Integer> numberList)
{
List<Integer> resultList = new ArrayList<Integer>();
for (int i = 0; i < numberList.size(); i++)
{
int number = numberList.get(i);
switch (number % 10)
{
case 1:
case 0:
resultList.add(1);
break;
case 2:
case 9:
resultList.add(2);
break;
case 3:
case 8:
resultList.add(3);
break;
case 4:
case 7:
resultList.add(4);
break;
case 5:
case 6:
resultList.add(5);
break;
default:
break;
}
}
return resultList;
}
}
class NumberCount
{
int numberOfNumber;
List<Integer> realNumber;
public int getNumberOfNumber()
{
return numberOfNumber;
}
public void setNumberOfNumber(int numberOfNumber)
{
this.numberOfNumber = numberOfNumber;
}
public List<Integer> getRealNumber()
{
return realNumber;
}
public void setRealNumber(List<Integer> realNumber)
{
this.realNumber = realNumber;
}
}