求高手帮小弟我写一个mfc猴子选大王程序

求高手帮我写一个mfc猴子选大王程序
用户输入m只猴子
报数的数字是n
报数时有动作,报到n的猴子出局,并且接着往下从头开始报数,直到选出大王

------解决方案--------------------
典型的递归运算
------解决方案--------------------
#include <iostream>
using namespace std;
struct st 
{
int value;
struct st *next;
};
main()
{
int n,count=0;
struct st *p,*s,*temp;
cout<<"请输入n的个数:";
cin>>n;
p=new struct st;
s=p;
p->value=1;
for (int i=2;i<=n;i++){
p->next=new struct st;
p=p->next;
p->value=i;
}
p->next=s;
while(s->next!=s){
count++;
if(count%2==0){
temp=s->next;
s->next=temp->next;
delete temp;
}
s=s->next;
}
cout<<s->value<<endl;
return 0;
}
------解决方案--------------------
循环链表做的,自己转成MFC
------解决方案--------------------
用圆或者矩形表示monkey,用直线或者弧线连接起来组成一个环形的,一次循环删除一个节点,重新刷新图形。
OnPaint/OnDraw中绘制图形。
------解决方案--------------------
吧猴子画成一个圆圈。然后设置一个定时器。在定时器处理函数中数数,画图而已。