试题:
试题编号: | 201712-2 |
试题名称: | 游戏 |
时间限制: | 1.0s |
内存限制: | 256.0MB |
问题描述: | 问题描述 有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向。 输入格式 输入一行,包括两个整数n和k,意义如题目所述。 输出格式 输出一行,包含一个整数,表示获胜的小朋友编号。 样例输入 5 2 样例输出 3 样例输入 7 3 样例输出 4 数据规模和约定 对于所有评测用例,1 ≤ n ≤ 1000,1 ≤ k ≤ 9。 |
解答:
package com.cc.ccf2;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str = input.nextLine();
String[] ss = str.split(" ");
int n = Integer.parseInt(ss[0]);
int k = Integer.parseInt(ss[1]);
List<Integer> l = new ArrayList<Integer>();
for(int i = 1;i<=n;i++){
l.add(new Integer(i));
}
int num = 1;
while(l.size() > 1){
int top = l.get(0);
l.remove(0);
if(num %k != 0 && num-num/10*10 !=k){
l.add(top);
}
num ++;
}
System.out.println(l.get(0));
}// end of Main
}// end of class
运行结果: