zoukankan      html  css  js  c++  java
  • 数据结构_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

     1 #include <stdio.h>
     2 #include <iostream>
     3 using namespace std;
     4 #include <queue>
     5 
     6 int main()
     7 {
     8     int i,j;
     9     int n,p,k;
    10     bool first=true;
    11     
    12     scanf("%d %d %d",&n,&p,&k);
    13     printf("%d
    ",n/k);
    14     
    15     queue<int> q;
    16     for(i=1;i<=n;i++)
    17         q.push(i);
    18     
    19     for(i=1; i<=n; i++)
    20     {
    21         if(i%k==0)
    22         {
    23             if(first)
    24             {
    25                 first = false;
    26                 printf("%d",q.front());
    27             }    
    28             else
    29                 printf(" %d",q.front());
    30         }
    31         q.pop();
    32         if(q.size()>p)//(q.size()>=p)
    33         {
    34             for(j=1;j<=p;j++)
    35             {
    36                 q.push(q.front());
    37                 q.pop();
    38             }
    39         }
    40     }
    41     
    42     return 0;
    43 }
  • 相关阅读:
    Java实现 LeetCode 394 字符串解码
    Java实现 LeetCode 394 字符串解码
    Java实现 LeetCode 392 判断子序列
    Java实现 LeetCode 392 判断子序列
    Java实现 LeetCode 392 判断子序列
    Java实现 LeetCode 391 完美矩形
    Java实现 LeetCode 391 完美矩形
    Java实现 LeetCode 391 完美矩形
    Java实现 LeetCode 390 消除游戏
    Java实现 LeetCode 390 消除游戏
  • 原文地址:https://www.cnblogs.com/cbattle/p/7676011.html
Copyright © 2011-2022 走看看