Hmm, well, in printSeats, your use variable is assigned the value of 361, (60*6+1).
But seats.size() is only 354. Seems like you have two fencepost errors: the first being that seats.size() is 354 instead of 360, and the second being that use is being assigned 361 instead of 360 (drop the +1?).
On line 68 (and line 99), you start your for loop at i=1 instead of i=0. This is causing one less iteration of the inner loop, which is equivalent to 6 push_back's less than you probably mean to happen.
Your use of 6 while at the same time iterating from 'A' to 'F' seems very magic-numbery to me. I would have the for loops be more like:
1 2 3 4 5
for (int j = 0; j < Num_Seats_Per_Row; j++)
{
char seat_letter = j + 'A'; // 0 -> A, 1 -> B, ..., 5 -> F
// ...
}