문제
투표가 끝난 뒤에는 개표를 해야 한다. 일반적으로 개표는 칠판을 사용하며, 한 표가 나올 때마다 한 획을 추가로 긋는 방식을 사용한다.
이 문제에서는 다음과 같은 방식으로 개표를 진행한다.
- 모든 후보자는 0ドル$표, 즉 아무것도 그려져 있지 않는 상태로 시작한다.
- 어떤 후보자가 한 표를 받을 때마다,
|를 맨 뒤에 그린다.
- 단, 그 후보자가 5ドル$표를 받을 때마다,
|를 그리는 대신 이미 있던 4ドル$개의 |에 가로줄을 그어 ++++를 만든다. 이후 1ドル$칸의 공백을 뒤에 추가한다.
예를 들면, 12ドル$표를 받은 후보의 경우 칠판에는 ++++ ++++ ||가 적히게 된다.
출력
각 후보에 대해, 칠판에 그려지게 되는 결과를 한 줄에 하나씩 출력한다.
예제 출력 1
++++ ++++ ||
|
++++
W3sicHJvYmxlbV9pZCI6IjMwODY4IiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVhYzFjXHVkNDVjIiwiZGVzY3JpcHRpb24iOiI8cD5cdWQyMmNcdWQ0NWNcdWFjMDAgXHViMDVkXHViMDljIFx1YjRhNFx1YzVkMFx1YjI5NCBcdWFjMWNcdWQ0NWNcdWI5N2MgXHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC4gXHVjNzdjXHViYzE4XHVjODAxXHVjNzNjXHViODVjIFx1YWMxY1x1ZDQ1Y1x1YjI5NCBcdWNlNjBcdWQzMTBcdWM3NDQgXHVjMGFjXHVjNmE5XHVkNTU4XHViYTcwLCBcdWQ1NWMgXHVkNDVjXHVhYzAwIFx1YjA5OFx1YzYyYyBcdWI1NGNcdWI5YzhcdWIyZTQgXHVkNTVjIFx1ZDY4ZFx1Yzc0NCBcdWNkOTRcdWFjMDBcdWI4NWMgXHVhZTBiXHViMjk0IFx1YmMyOVx1YzJkZFx1Yzc0NCBcdWMwYWNcdWM2YTlcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1Yzc3NCBcdWJiMzhcdWM4MWNcdWM1ZDBcdWMxMWNcdWIyOTQgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWJjMjlcdWMyZGRcdWM3M2NcdWI4NWMgXHVhYzFjXHVkNDVjXHViOTdjIFx1YzljNFx1ZDU4OVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWJhYThcdWI0ZTAgXHVkNmM0XHViY2Y0XHVjNzkwXHViMjk0ICQwJFx1ZDQ1YywgXHVjOTg5IFx1YzU0NFx1YmIzNFx1YWM4M1x1YjNjNCBcdWFkZjhcdWI4MjRcdWM4MzggXHVjNzg4XHVjOWMwIFx1YzU0YVx1YjI5NCBcdWMwYzFcdWQwZGNcdWI4NWMgXHVjMmRjXHVjNzkxXHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWM1YjRcdWI1YTQgXHVkNmM0XHViY2Y0XHVjNzkwXHVhYzAwIFx1ZDU1YyBcdWQ0NWNcdWI5N2MgXHViYzFiXHVjNzQ0IFx1YjU0Y1x1YjljOFx1YjJlNCwgPHNwYW4gc3R5bGU9XCJjb2xvcjojZTc0YzNjO1wiPjxjb2RlPnw8XC9jb2RlPjxcL3NwYW4+XHViOTdjIFx1YjllOCBcdWI0YTRcdWM1ZDAgXHVhZGY4XHViOWIwXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWIyZTgsIFx1YWRmOCBcdWQ2YzRcdWJjZjRcdWM3OTBcdWFjMDAgJDUkXHVkNDVjXHViOTdjIFx1YmMxYlx1Yzc0NCBcdWI1NGNcdWI5YzhcdWIyZTQsIDxzcGFuIHN0eWxlPVwiY29sb3I6I2U3NGMzYztcIj48Y29kZT58PFwvY29kZT48XC9zcGFuPlx1Yjk3YyBcdWFkZjhcdWI5YWNcdWIyOTQgXHViMzAwXHVjMmUwIFx1Yzc3NFx1YmJmOCBcdWM3ODhcdWIzNTggJDQkXHVhYzFjXHVjNzU4IDxzcGFuIHN0eWxlPVwiY29sb3I6I2U3NGMzYztcIj48Y29kZT58PFwvY29kZT48XC9zcGFuPlx1YzVkMCBcdWFjMDBcdWI4NWNcdWM5MDRcdWM3NDQgXHVhZGY4XHVjNWI0IDxzcGFuIHN0eWxlPVwiY29sb3I6I2U3NGMzYztcIj48Y29kZT4rKysrPFwvY29kZT48XC9zcGFuPlx1Yjk3YyBcdWI5Y2NcdWI0ZTBcdWIyZTQuIFx1Yzc3NFx1ZDZjNCAkMSRcdWNlNzhcdWM3NTggXHVhY2Y1XHViYzMxXHVjNzQ0IFx1YjRhNFx1YzVkMCBcdWNkOTRcdWFjMDBcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+XHVjNjA4XHViOTdjIFx1YjRlNFx1YmE3NCwgJDEyJFx1ZDQ1Y1x1Yjk3YyBcdWJjMWJcdWM3NDAgXHVkNmM0XHViY2Y0XHVjNzU4IFx1YWNiZFx1YzZiMCBcdWNlNjBcdWQzMTBcdWM1ZDBcdWIyOTQgPHNwYW4gc3R5bGU9XCJjb2xvcjojZTc0YzNjO1wiPjxjb2RlPisrKysgKysrKyB8fDxcL2NvZGU+PFwvc3Bhbj5cdWFjMDAgXHVjODAxXHVkNzg4XHVhYzhjIFx1YjQxY1x1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYiBcdWJjODhcdWM5ZjggXHVjOTA0XHVjNWQwIFx1ZDZjNFx1YmNmNFx1Yzc1OCBcdWMyMTggJFQkXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gJCgxXFxsZSBUXFxsZSAxMDApJDxcL3A+XHJcblxyXG48cD5cdWI0NTAgXHViYzg4XHVjOWY4IFx1YzkwNFx1YmQ4MFx1ZDEzMCAkVCRcdWFjMWNcdWM3NTggXHVjOTA0XHVjNWQwIFx1YWM3OFx1Y2NkMCwgXHVhYzAxIFx1ZDZjNFx1YmNmNFx1YWMwMCBcdWJjMWJcdWM3NDAgXHVkNDVjXHVjNzU4IFx1YzIxOCAkbiRcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiAkKDFcXGxlIG5cXGxlIDEwMCkkPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+XHVhYzAxIFx1ZDZjNFx1YmNmNFx1YzVkMCBcdWIzMDBcdWQ1NzQsIFx1Y2U2MFx1ZDMxMFx1YzVkMCBcdWFkZjhcdWI4MjRcdWM5YzBcdWFjOGMgXHViNDE4XHViMjk0IFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWQ1NWMgXHVjOTA0XHVjNWQwIFx1ZDU1OFx1YjA5OFx1YzUyOSBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6IjMwODY4IiwicHJvYmxlbV9sYW5nIjoiMSIsInRpdGxlIjoiQ291bnRpbmcgVm90ZXMiLCJkZXNjcmlwdGlvbiI6IjxwPk9uY2UgYW4gZWxlY3Rpb24gaXMgb3ZlciwgdGhlIHZvdGVzIG11c3QgYmUgY291bnRlZC4gTm9ybWFsbHksIHdlIHVzZSBhIGJsYWNrYm9hcmQgZm9yIHRoaXMsIGFkZGluZyBhIHN0cm9rZSBvZiBjaGFsayBmb3IgZWFjaCB2b3RlLjxcL3A+XHJcblxyXG48cD5JbiB0aGlzIHByb2JsZW0sIHdlIGNvdW50IHRoZSB2b3RlcyB1c2luZyB0aGUgZm9sbG93aW5nIG1ldGhvZC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5BbGwgY2FuZGlkYXRlcyBzdGFydCB3aXRoICQwJCB2b3Rlcy4gVGhhdCBpcywgd2l0aG91dCBhbnkgbGluZSBkcmF3bi48XC9saT5cclxuXHQ8bGk+RWFjaCB0aW1lIGEgY2FuZGlkYXRlIGdldHMgYSB2b3RlLCB3ZSBkcmF3IGEgPHNwYW4gc3R5bGU9XCJjb2xvcjojZTc0YzNjO1wiPjxjb2RlPnw8XC9jb2RlPjxcL3NwYW4+IGF0IHRoZSBiYWNrLjxcL2xpPlxyXG5cdDxsaT5Ib3dldmVyLCBlYWNoIHRpbWUgYSBjYW5kaWRhdGUgZ2V0cyAkNSQgdm90ZXMsIGluc3RlYWQgb2YgPHNwYW4gc3R5bGU9XCJjb2xvcjojZTc0YzNjO1wiPjxjb2RlPnw8XC9jb2RlPjxcL3NwYW4+LCB3ZSBhZGQgYSBzdHJva2UgYWNyb3NzIHRoZSBleGlzdGluZyAkNCQgbGluZXMgb2YgdGhlIGZvcm0gPHNwYW4gc3R5bGU9XCJjb2xvcjojZTc0YzNjO1wiPjxjb2RlPnw8XC9jb2RlPjxcL3NwYW4+ICwgbWFraW5nIDxzcGFuIHN0eWxlPVwiY29sb3I6I2U3NGMzYztcIj48Y29kZT4rKysrPFwvY29kZT48XC9zcGFuPi4gV2UgdGhlbiBhZGQgJDEkIGJsYW5rIHNwYWNlIGF0IHRoZSBiYWNrLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPkZvciBleGFtcGxlLCBhIGNhbmRpZGF0ZSB3aXRoICQxMiQgdm90ZXMgd2lsbCBoYXZlIDxzcGFuIHN0eWxlPVwiY29sb3I6I2U3NGMzYztcIj48Y29kZT4rKysrICsrKysgfHw8XC9jb2RlPjxcL3NwYW4+IGRyYXduIG9uIHRoZSBibGFja2JvYXJkLjxcL3A+XHJcbiIsImlucHV0IjoiPHA+VGhlIGZpcnN0IGxpbmUgb2YgaW5wdXQgY29udGFpbnMgYSBzaW5nbGUgaW50ZWdlciAkVCQsIGRlbm90aW5nIHRoZSBudW1iZXIgb2YgY2FuZGlkYXRlcy4gJCgxXFxsZSBUXFxsZSAxMDApJDxcL3A+XHJcblxyXG48cD5FYWNoIG9mIHRoZSBuZXh0ICRUJCBsaW5lcyBvZiBpbnB1dCBjb250YWlucyBhIHNpbmdsZSBpbnRlZ2VyICRuJCwgZGVub3RpbmcgdGhlIG51bWJlciBvZiB2b3RlcyBlYWNoIGNhbmRpZGF0ZSBnb3QuICQoMVxcbGUgblxcbGUgMTAwKSQ8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5Gb3IgZWFjaCBjYW5kaWRhdGUsIHByaW50IHRoZSByZXN1bHQgdGhhdCBpcyBkcmF3biBvbiB0aGUgY2hhbGtib2FyZCBpbiBvbmUgbGluZS48XC9wPlxyXG5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiRW5nbGlzaCJ9XQ==