数据结构_yjjsj(伊姐姐数字游戏)
问题描述
伊姐姐热衷于各类数字游戏, 24 点、 2048、数独等轻轻松松毫无压力。一
日,可爱的小姐姐邀请伊姐姐一起玩一种简单的数字 game,游戏规则如下:
一开始桌上放着 n 张数字卡片,从左到右按数字 1-n 放置,小姐姐按以下步
骤取卡片
小姐姐取出最左边的一张牌,藏于袖中;
小姐姐将此时剩余卡牌的最左边的 p 张移到最右边, 假设桌上的牌为 1 2 3 4
5,移动最左边的两张卡片后结果为 3 4 5 1 2。 注意当桌上卡片数量小于 p 时不
进行这步操作。
所有卡牌都被藏起来以后,游戏结束。
这是个十分简单的数字 game, 然而伊姐姐因为紧张丧失游戏能力, 你能帮
助伊姐姐统计, 小姐姐第 k 次,第 2*k 次…第 i*k 次(i<=n/k)藏于袖中的卡片吗?
★数据输入
输入第一行为三个正整数 n(1<=n<=100000),p(0<=p<=10),k(0<k<=100),含
义在题目中给出。
★数据输出
输出为两行,第一行输出你总共要输出的卡片数量 m。
第二行 m 个数, 按顺序输出小姐姐第 k 次,第 2*k 次…第 m*k 次藏的卡片。
| 输入示例 | 输出示例 |
| 6 3 2 | 3 5 6 3 |
| 输入示例 | 输出示例 |
| 10 1 3 | 3 5 2 8 |
思路
测试数据较小,暴力
code
#include <stdio.h>
#include <iostream>
using namespace std;
#include <queue> int main()
{
int i,j;
int n,p,k;
bool first=true; scanf("%d %d %d",&n,&p,&k);
printf("%d\n",n/k); queue<int> q;
for(i=;i<=n;i++)
q.push(i); for(i=; i<=n; i++)
{
if(i%k==)
{
if(first)
{
first = false;
printf("%d",q.front());
}
else
printf(" %d",q.front());
}
q.pop();
if(q.size()>p)//(q.size()>=p)
{
for(j=;j<=p;j++)
{
q.push(q.front());
q.pop();
}
}
} return ;
}
数据结构_yjjsj(伊姐姐数字游戏)的更多相关文章
- 算法与数据结构实验题 4.1 伊姐姐数字 game
★实验任务 伊姐姐热衷于各类数字游戏,24 点.2048.数独等轻轻松松毫无压力.一 日,可爱的小姐姐邀请伊姐姐一起玩一种简单的数字 game,游戏规则如下: 一开始桌上放着 n 张数字卡片,从左到右 ...
- C语言猜数字游戏
猜数字游戏,各式各样的实现方式,我这边提供一个实现方式,希望可以帮到新手. 老程序猿就不要看了,黑呵呵 源代码1 include stdio.h include stdlib.h include ti ...
- 不一样的猜数字游戏 — leetcode 375. Guess Number Higher or Lower II
好久没切 leetcode 的题了,静下心来切了道,这道题比较有意思,和大家分享下. 我把它叫做 "不一样的猜数字游戏",我们先来看看传统的猜数字游戏,Guess Number H ...
- java 猜数字游戏
作用:猜数字游戏.随机产生1个数字(1~10),大了.小了或者成功后给出提示. 语言:java 工具:eclipse 作者:潇洒鸿图 时间:2016.11.10 >>>>> ...
- 【原创Android游戏】--猜数字游戏Version 0.1
想当年高中时经常和小伙伴在纸上或者黑板上或者学习机上玩猜数字的游戏,在当年那个手机等娱乐设备在我们那还不是很普遍的时候是很好的一个消遣的游戏,去年的时候便写了一个Android版的猜数字游戏,只是当时 ...
- 【原创Android游戏】--猜数字游戏V1.1 --数据存储,Intent,SimpleAdapter的学习与应用
--------------------------------------------------------------- V0.1版本 上次做完第一个版本后,发现还有一些漏洞,并且还有一些可以添 ...
- NOIP2003pj数字游戏[环形DP]
题目描述 丁丁最近沉迷于一个数字游戏之中.这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易.游戏是这样的,在你面前有一圈整数(一共n个),你要按顺序将其分 ...
- Codevs 1229 数字游戏
1229 数字游戏 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 Description Lele 最近上课的时候都很无聊,所以他发明了 ...
- codevs 1229 数字游戏(可重集的全排列)
传送门 Description Lele 最近上课的时候都很无聊,所以他发明了一个数字游戏来打发时间. 这个游戏是这样的,首先,他拿出几张纸片,分别写上0到9之间的任意数字(可重复写某个数字),然后 ...
随机推荐
- LeetCode Output Contest Matches
原题链接在这里:https://leetcode.com/problems/output-contest-matches/description/ 题目: During the NBA playoff ...
- ubuntu nfs server config
(1)#sudo apt-get install nfs-kernel-server 打开/etc/exports文件,在末尾加入: /home/hyq *(rw,sync,no_root_squas ...
- docker 摆渡镜像脚本
#!/bin/bash if [ $# != 1 ];then echo "Param error";exit; fi DOCKER_NAME=$1 IMAGE_TAG=${DOC ...
- div 遮罩层 弹窗
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JAVA中数值的表示
1.Java中用补码形式表示 2.第一位正负位,1表示负,0表示正. 3.原码:一个数的二进制表示. 3的原码00000011 -3的 原码 10000011 4 ...
- Java基础--压缩和解压缩gz包
gz是Linux和OSX中常见的压缩文件格式,下面是用java压缩和解压缩gz包的例子 public class GZIPcompress { public static void FileCompr ...
- binlog之三:binlog开启、查看
0.开启二进制日志记录功能: #vim /etc/my.cnf [mysqld] log_bin=mysql-bin b ...
- 转:MongoDB · 引擎特性 · journal 与 oplog,究竟谁先写入?
转:MongoDB · 引擎特性 · journal 与 oplog,究竟谁先写入? 数据库内核月报 链接:http://mysql.taobao.org/monthly/2018/05/07/ Mo ...
- 9个步骤:教你设计出优秀的MMORPG副本关卡
转自:http://www.gameres.com/664485.html 副本的定义 以一张场景地图为原型,针对单个玩家.队伍或者团队生成的一个实例,包含完整的开启关闭.怪物刷新.进度记录等逻辑. ...
- 对runtime的总结:让你会用Runtime
导语Runtime,简称运行时,就是系统在运行的时候的一些机制,其中最主要的是消息机制,是一套底层的纯C语言的API,我们平时所编写的OC代码,在程序的运行过程中都转成了runtime的代码,平时调方 ...