约瑟夫环
来源:互联网 发布:预防网络诈骗手抄报 编辑:程序博客网 时间:2024/05/29 13:23
#include<stdio.h>
#include<malloc.h>#define size sizeof(link)#define null 0typedef struct link { int num; struct link *pre; struct link *next; }link; link *current = null;link *q = null;link *head = null;int main(){int n,m,p,i,count;scanf("%d %d %d",&n,&m,&p);for(i=1;i<=n;i++){q = (link*)malloc(size); q->num = i; if(i==p){head = q;} if(current == null) { current = q; current->next = q; current->pre = q; } else { q->next = current->next; current->next->pre = q; current->next = q; q->pre = current; current = q; }}count = m-1;for(i=0;i<n;i++){while(count--){head=head->next;}printf("%d ",head->num);head->pre->next=head->next;head->next->pre=head->pre;count = m;}return 0;}
一开始打算用循环做的,结果删除的时候卡了...
换成双向循环之后,感觉到了世界的美丽。
0 0
- 约瑟夫问题、约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- Oracle删除数据库/数据库软件
- 策略模式
- 4 python os模块用法的一个例子
- java获取系统属性
- Toolbar所遇到的坑
- 约瑟夫环
- 这样的外衣值得拥有
- 测试写一篇关于Handler Looper MessageQueue的博客
- python中split使用方法
- R软件学习笔记(vector,Array,List,Data Frame)
- thinkphp5 之数据操作和模板输出
- TangYuan使用教程-事务
- 煤球数
- studio删除没用的资源,给apk减肥