class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param tickets int整型vector 
     * @param k int整型 
     * @return int整型
     */
    int timeRequiredToBuy(vector<int>& tickets, int k) {
        int sum=0;
        queue<int> a;
        int n=tickets.size();
        for(int i=0;i<n;i++){
            a.push(i);
        }
       while(true){
        int idx=a.front();//储存当前索引值
        a.pop();//删除所有,符合条件后面再加
        sum++;//次数加1
        tickets[idx]--;//所有均-1
        if(tickets[idx]==0){//检查是否为0
            if(idx==k){
                break;//如果到k结束
            }
        }else{
                a.push(idx);//没有为0再加上
            }
       }
        return sum;
    }
};