代码如下:
#include <bits/stdc++.h>
using namespace std;
//火车购票
int main(){
int n;
cin >> n;
vector< vector<int> > v(20, vector<int>(5, 0)); //初始化火车票,0代表未被购买
for(int i = 0; i < n; i++){
int p; //要购买的票数
cin >> p;
int diff = 1;
vector<int> tickets(p); //将被购买的火车票座位号
for(int j = 0; j < 20; j++){ //检查能否安排在一排
if(count(v[j].begin(), v[j].end(), 0) < p) continue;
else{ //能被分在同一排
int num = 0;
for(int k = 0; k < 5; k++){
if(v[j][k] == 0 && num < p){
tickets[num] = j*5+k+1;
num++;