#include <iostream>
using namespace std;
int seat[6][4] = {
{1,1,1,1},
{1,1,1,1},
{1,1,1,1},
{1,1,1,1},
{1,1,1,1},
{1,1,0,1}};
void message(int i, char c, int smoke, int msg)
{
if(msg) {
cout << "窓側(あるいは通路側)はすでに満席のため通路側(窓側)で予約します" << endl;
}
cout << "--------" << endl;
cout << i+1 << c << " " << (smoke==1?"喫煙":"禁煙") << endl;
cout << "--------" << endl;
}
int search(int smoke, int place, int msg)
{
int i,j;
if(smoke==1) {
i=0; j=1;
} else {
i=2; j=5;
}
if(place==1) {
for(;i<=j;i++) {
if (seat[i][0] == 0) {
message(i, 'A', smoke, msg);
return 0;
} else if (seat[i][3] == 0) {
message(i, 'D', smoke, msg);
return 0;
}
}
} else {
for(;i<=j;i++) {
if(seat[i][1] == 0) {
message(i, 'B', smoke, msg);
return 0;
} else if (seat[i][2] == 0) {
message(i, 'C', smoke, msg);
return 0;
}
}
}
return 1;
}
int main(void)
{
int smoke, place;
char c;
cout << "喫煙席を希望する方は 1 をタイプしてください。" << endl;
cout << "禁煙席を希望する方は 2 をタイプしてください。" << endl;
cin >> smoke;
cout << "窓側を希望する方は 1 をタイプしてください。" << endl;
cout << "通路側を希望する方は 2 をタイプしてください。" << endl;
cin >> place;
if(search(smoke, place, 0)) {
if(search(smoke, place==1?2:1, 1)) {
cout << (smoke==1?"禁":"喫") << "煙席でもよろしいですか?(y/n)" << endl;
cin >> c;
if(c=='y') {
if(search(smoke==1?2:1, place, 0)) {
if(search(smoke==1?2:1, place==1?2:1, 1)) {
cout << "満席です。" << endl;
cout << "3時間後に次のフライトがあります。" << endl;
}
}
} else {
cout << "3時間後に次のフライトがあります。" << endl;
}
}
}
return 0;
}