游客 Signup | Login
中文 | En

3646 - bus

The final round of Bayan Programming Contest will be held in Tehran, and the participants will be carried around

 with a yellow bus. The bus has 34 passenger seats: 4 seats in the last row and 3 seats in remaining rows.


<span style="font-size:14px;">The event

coordinator has a list of k participants who should be picked up at the airport. When a participant

<span style="font-size:14px;">&nbsp;gets on the bus, he

will sit in the last row with an empty seat. If there is more than one empty seat in that row,

<span style="font-size:14px;">&nbsp;he will take the leftmost one.</span>

<span style="font-size:14px;">In order to keep

track of the people who are on the bus, the event coordinator needs a figure showing which

<span style="font-size:14px;">&nbsp;seats are going to be taken by&nbsp;</span><i><span style="font-size:14px;">k</span></i><span style="font-size:14px;">&nbsp;participants.

Your task is to draw the figure representing occupied seats.

Input

each line of input contains integer k, (0 ≤ k ≤ 34), denoting the number of participants.

Output

Print the figure of a bus with k passengers as described in sample tests. Character '#' denotes an empty seat,

 while 'O' denotes a taken seat. 'D' is the bus driver and other characters in the output are for the purpose of

 beautifying the figure. Strictly follow the sample test cases output format. Print exactly six lines. Do not output

 extra space or other characters.

Examples

Input

9
20

Output

+------------------------+
|O.O.O.#.#.#.#.#.#.#.#.|D|)
|O.O.O.#.#.#.#.#.#.#.#.|.|
|O.......................|
|O.O.#.#.#.#.#.#.#.#.#.|.|)
+------------------------+
+------------------------+
|O.O.O.O.O.O.O.#.#.#.#.|D|)
|O.O.O.O.O.O.#.#.#.#.#.|.|
|O.......................|
|O.O.O.O.O.O.#.#.#.#.#.|.|)
+------------------------+

Solution C++

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int k;
	//freopen("F:\\QQDownlaod\\Laputa\\2015.3.23\\my1\\data.in","r",stdin);
	//freopen("F:\\QQDownlaod\\Laputa\\2015.3.23\\my1\\data.out","w",stdout);
	while(~scanf("%d",&k)){
		
    char a[7][30]={
        {"+------------------------+"},
        {"|#.#.#.#.#.#.#.#.#.#.#.|D|)"},
        {"|#.#.#.#.#.#.#.#.#.#.#.|.|"},
        {"|#.......................|"},
        {"|#.#.#.#.#.#.#.#.#.#.#.|.|)"},
        {"+------------------------+"}
    };
    int x=1,y=1;
    while(k>0){
        if (a[x][y]=='#'){
            a[x][y]='O';
            k--;
        }
        if (x==4){
                x=1;
                y++;
            } else x++;
    }
    for (int i=0;i<6;i++){
        printf("%s",a[i]);
        printf("\n");
    }
	
	}
    return 0;
}
Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题