A14318 | Симметричный амфитеатр
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Все готовятся к VK Fest 2021! Для того, чтобы зрителям была лучше видна главная сцена, планируется построить амфитеатр. В этой задаче мы будем рассматривать его сбоку — схематично он будет иметь форму лестницы из $n$ одинаковых квадратов. Лестница — это одна или более башен квадратов, выстроенных в ряд, где высоты башен невозрастают слева направо.
На следующем рисунке можно видеть три разные фигуры из $12$ квадратов. Первые две фигуры — лестницы, а третья — нет.
Из эстетических соображений было решено, что амфитеатр должен быть симметричным. Формально, амфитеатр называется симметричным, если при отражении его схемы относительно прямой $x = y$ получается тот же самый рисунок (где ось $x$ направлена слева направо, а ось $y$ — снизу вверх). Например, первая лестница на рисунке выше — симметричная, а вторая — нет.
Кроме того, амфитеатр должен быть максимально компактным — а именно, сторона минимального квадрата, внутрь которого можно его поместить, должна быть как можно меньше.
По заданному числу $n$ нарисуйте схему амфитеатра из ровно $n$ квадратов, удовлетворяющую всем условиям.
На следующем рисунке можно видеть три разные фигуры из $12$ квадратов. Первые две фигуры — лестницы, а третья — нет.
Из эстетических соображений было решено, что амфитеатр должен быть симметричным. Формально, амфитеатр называется симметричным, если при отражении его схемы относительно прямой $x = y$ получается тот же самый рисунок (где ось $x$ направлена слева направо, а ось $y$ — снизу вверх). Например, первая лестница на рисунке выше — симметричная, а вторая — нет.
Кроме того, амфитеатр должен быть максимально компактным — а именно, сторона минимального квадрата, внутрь которого можно его поместить, должна быть как можно меньше.
По заданному числу $n$ нарисуйте схему амфитеатра из ровно $n$ квадратов, удовлетворяющую всем условиям.
输入格式
В единственной строке задано одно целое число $n$ ( $1 \le n \le 100$ ) — число квадратов, из которых нужно составить схему амфитеатра.
输出格式
Если не существует схемы амфитеатра из $n$ квадратов, выведите единственное число $-1$ .
Иначе в первой строке выведите целое число $m$ — минимальное возможное число строк и столбцов в схеме амфитеатра. Далее выведите $m$ строк, описывающих схему. Каждая строка должна содержать ровно $m$ символов 'o' (строчная латинская буква) или '.', где 'o' описывает построенный квадрат, а '.' — пустое место. Схема амфитеатра должна состоять ровно из $n$ символов 'o'. Ячейка в левом нижнем углу должна содержать квадрат. Если возможных ответов с минимальным $m$ несколько, выведите любой из них.
Иначе в первой строке выведите целое число $m$ — минимальное возможное число строк и столбцов в схеме амфитеатра. Далее выведите $m$ строк, описывающих схему. Каждая строка должна содержать ровно $m$ символов 'o' (строчная латинская буква) или '.', где 'o' описывает построенный квадрат, а '.' — пустое место. Схема амфитеатра должна состоять ровно из $n$ символов 'o'. Ячейка в левом нижнем углу должна содержать квадрат. Если возможных ответов с минимальным $m$ несколько, выведите любой из них.
输入输出样例
输入 #1
3
输出 #1
2 o. oo
输入 #2
17
输出 #2
5 o.... ooo.. oooo. oooo. ooooo
暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted