约瑟夫问题
来源:互联网 发布:sql 镜像服务器 编辑:程序博客网 时间:2024/06/06 21:39
#include<stdio.h>#include<stdlib.h>typedef struct LNode{ int data; struct LNode *next;}LNode,*LinkList;LinkList Build(int n)//建立有n个结点的循环单链表 { int i; LinkList head; head = (LinkList)malloc(sizeof(LNode)); LinkList s,p = head; p->data = 1; for(i = 2; i <= n; i ++) { s = (LinkList)malloc(sizeof(LNode)); s->data = i; p->next = s; p = s; } p->next = head; return head;}LinkList GetElem(LinkList p,int n)//找到从head开始的第n个结点 { int i; LinkList s = p; for( i = 1; i < n; i ++) { s = s->next ; } return s;}int Delete(LinkList p)//删除p的后继结点 { int num; LinkList s; s = (LinkList)malloc(sizeof(LNode)); s = p->next ; p->next = s->next ; num = s->data ; free(s); return num; } void CountOff(int n,int m,int k,LinkList head)//模拟循环报数全过程 { int i,num; LinkList p = head; for(i= n; i >= 1; i --) { p = GetElem(p,m-1); num = Delete(p); if( i <= k) printf("%d ",num); p = p->next ; }}int main(){ int n,m,k; LinkList head; while(scanf("%d%d%d",&n,&m,&k)!=EOF) { head = Build(n); CountOff(n,m,k,head); } return 0; }
阅读全文
0 0
- 约瑟夫问题、约瑟夫环
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- 约瑟夫问题
- python pip 国内源
- AxonFramework,存储库
- 跟着Django手册建立了Blog(四)--写静态文件
- MSSQL:使用表格多页浏览数据库
- OL3和echart的结合
- 约瑟夫问题
- HTML+CSS编写静态网站-13 包含外部css样式
- 【机器学习算法模型】分类算法——人工神经网络
- 【机器学习算法模型】分类算法——k近邻法
- 计算几何问题汇总--点与线的位置关系
- BZOJ 2882: 工艺 最小表示法
- 怎么解决Windows自动更新问题
- java元注解和自定义注解的使用方法
- NUC1657 All in All【字符串匹配】