#P09003. 约瑟夫问题
约瑟夫问题
题目背景
据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后, 个犹太人与Josephus及他的朋友躲到一个山洞中, 个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式, 个人排成一个圆圈,由第 个人开始报数,每报数到第 人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。Josephus要他的朋友先假装遵从,他将朋友与自己安排在第 个和第 个位置,于是逃过了这场死亡游戏。
题目描述
将问题简化, 个人围成一个圆圈,每个人的编号依次是 。从第一个人开始数数,数到 的人出圈。然后由出圈的下一个人重新数数,数到 的人又出圈……输入 和 以及 个人的姓名和性别,依次输出出圈人的信息。
需要特别注意的是, 可能远大于 。
输入格式
第 行是两个正整数 ;
紧接着有 行,依次是编号从 开始的 个人的姓名和性别,姓名和性别都是不包含空格且长度不超过 的字符串,性别只会是 Male
或 Femal
中的一种,两者之间用一个空格隔开。
输出格式
行,每行依次是出圈人的编号、姓名和性别,用一个空格隔开每项数据。
输入输出样例
5 3
Jerry Male
Jack Male
Lucy Femal
Tim Male
Sara Femal
3 Lucy Femal
1 Jerry Male
5 Sara Femal
2 Jack Male
4 Tim Male
说明/提示
👀️ 对于的数据,。
相关
在以下作业中: