import java.util.*;
public class Solution {
public int LastRemaining_Solution(int n, int m) {
//直接用list循环剔除
ArrayList list=new ArrayList();
//list里面放数字
for(int i=0;i<=n-1;i++)
{
list.add(i);
}
//去处数字,去除以后往前移
// 第一轮
//m表示一共要加多少数
//list.size()表示一圈有多少个数
int i=0;
if((0+m)>list.size())
{
i=(0+m)%list.size()-1;
}
else
{
i=m-1;
}
//i,每一轮的i都会变化
while(list.size()>1)
{
// System.out.println(list);
list.remove(i);
//从它的下一个小朋友开始
//如果是最后一个,从0开始
if((i+m-1)>=list.size())
{
i=(i+m-1)%list.size();
}
else
{
i=i+m-1;
}
}
return list.get(0);
}
}