uva 144

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Dzy929076300/article/details/52752095

#include<iostream>

#include<queue>

#include<algorithm>

#include<map>

#include<string.h>

#include<math.h>

#include<stdio.h>

#include <iomanip>

////////

using namespace std;


struct student

{

    int id;

    int pay_value;

};

queue<student>queCard;


int main()

{

    student s;

    int i,j;

    int num_of_students,limit;

    ////////

    while (scanf("%d%d",&num_of_students,&limit)==2 && num_of_students && limit)

    {

        while(!queCard.empty())

        {

            queCard.pop();

        }

        /////////

        for(i=1;i<=num_of_students;i++)

        {

            s.id = i;

            s.pay_value = 0;

            queCard.push(s);

        }

        /////////

        while(!queCard.empty())

        {

            for(i=1;i<=limit;i++)

            {

                int out_store = i;

                while(!queCard.empty() && out_store)

                {

                    s = queCard.front();

                    queCard.pop();

                    if(s.pay_value+out_store<40)

                    {

                        s.pay_value+=out_store;

                        out_store = 0;

                        queCard.push(s);

                    }

                    else

                    {

                        out_store-=40-s.pay_value;

                        cout<<setw(3)<<s.id;

                    }

                }

            }

        }

        cout<<endl;

        

    }

}

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页