美文网首页
2019-06-16 YTUOJ 2018: 约瑟夫问题

2019-06-16 YTUOJ 2018: 约瑟夫问题

作者: 狐二丶 | 来源:发表于2019-06-16 22:11 被阅读0次
--------------------------------
Author : ShawnDong
updateDate :2019.6.16
Blog : ShawnDong98.github.io
--------------------------------

题目描述:n个人想玩残酷的死亡游戏,游戏规则如下: n个人进行编号,分别从1到n,排成一个圈,顺时针从1开始数到m,数到m的人被杀,剩下的人继续游戏,活到最后的一个人是胜利者。 请输出最后一个人的编号。

//Author : ShawnDong
//updateDate : 2019/6/11.
//Blog : ShawnDong98.github.io
//
#include "iostream"

using namespace std;
typedef long long ll;

typedef struct CLinkList{
    int data;
    struct CLinkList *next;
}node;

void Josephus(int n, int m){
    node *pHead = (node*)malloc(sizeof(node));
    pHead->next = pHead;
    node *r = pHead;

    for(int i=1; i<=n; i++){
        node *p = (node*)malloc(sizeof(node));
        p->data = i;
        r->next = p;
        r = p;
    }
    r->next = pHead->next;

    //n %=  m;

    node *p = pHead->next;
    while(p != p->next){
        for (int i = 1; i < m-1; i++)
        {
            p = p->next ;
        }

//        printf("%d->", p->next->data );

        node *temp = p->next ;              //删除第m个节点
        p->next = temp->next ;
        free(temp);

        p = p->next ;
    }

    printf("%d\n", p->data );


}

int main(){
    int n;
    int m;
    cin >> n;
    cin >> m;
    Josephus(n, m);
    return 0;
}

相关文章

  • 2019-06-16 YTUOJ 2018: 约瑟夫问题

    -------------------------------- Author : ShawnDong updat...

  • 约瑟夫问题

    今天看了一下约瑟夫问题,嗯,感觉自己智商欠费:( 还是来总结下好啦~ 问题 约瑟夫是犹太军队的一个将军,在反...

  • 约瑟夫问题

    题目:0,1,...,n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下...

  • 约瑟夫问题

    要是你怎么制定游戏规则? 现在有前面15个好人和后面15个坏人,他们围成一圈。现在从第一个好人开始,数到第n个人就...

  • 约瑟夫问题

    问题来源 据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后,39个犹太人与Josephu...

  • 约瑟夫问题

    源文件josephus.c

  • 约瑟夫问题

    约瑟夫问题 一、数组解法 二、循环队列 三、数学解法

  • 约瑟夫问题

    一、约瑟夫问题介绍 1、约瑟夫问题原题:n个小孩子手拉手围成一个圈,编号为k(1 <= k <= n )的人从1开...

  • 约瑟夫问题

    找到首节点、创建一个节点记录遍历当前节点的前一个节点、创建一个计数器,当计数器的值为3的时候,将该节点从链表中移除...

  • 约瑟夫问题

    大家自行百度下约瑟夫问题,这里用golang+单向循环链表的方式解决约瑟夫问题,下面先提供一下代码: func (...

网友评论

      本文标题:2019-06-16 YTUOJ 2018: 约瑟夫问题

      本文链接:https://www.haomeiwen.com/subject/dlsnfctx.html