题目
f(n,m)代表删除第几个元素。求n个数字每次删除第m个最后剩下的元素,就是求删除n-1次剩下的元素,就是求删除n次,第n次删除的第几个元素。
class Solution {
public:
int lastRemaining(int n, int m) {
if(n==1) return 0;
int k=lastRemaining(n-1,m);
return (m%n+k)%n;
}
};
class Solution {
public:
int lastRemaining(int n, int m) {
int ans=0;
for(int i=2;i<=n;++i) ans=(m%i+ans)%i;
return ans;
}
};