Hrbust 1180 报数(循环队列)

题目描述

有 N 个人围成一紧接着,指定编报到 D 的人出列要求同学编程求输入
输入包括多组测对于每组用例,接下来 N 行是每最后是以两个以输出
输出所求的顺序
样例输入

Zhao 
Qian 
Sun 
Li 
Zhou 
Wu 
Zheng 
Wang 
4,4 
样例输出
Zheng 
Sun 
Wang 
Zhou 
Li 
Wu 
Qian 
Zhao

代码 

#include<iostream> 
#include<queue> 
#include<string> 
#include<stdio.h> 
using namespace std; 
int main()
{ 
  int n; 
  while(cin>>n)
  { 
    queue<string> a; 
    for(int i=0;i<n;i++)
    { 
      string name; 
      cin>>name; 
      a.push(name); 
    } 
    int w,s; 
    scanf("%d,%d",&w,&s); 
    for(int i=0;i<w-1;i++)
    { 
      string temp = a.front(); 
      a.pop(); 
      a.push(temp); 
    } 
    while(a.size())
    { 
      for(int i=0;i<s-1;i++)
      { 
        string temp = a.front(); 
        a.pop() 
        a.push(temp); 
      } 
      cout<<a.front()<<endl; 
      a.pop(); 
    } 
  } 
}

猜你喜欢

转载自blog.csdn.net/qq_24016309/article/details/88699256