UVA1110 Pyramids 金字塔

题目描述

很久很久以前,有一位法老想建造金字塔,现在他有 $N$ 块正方体石头,有两种形式的金字塔可供他选择:一种金字塔叫做 “高金字塔”,一个“高金字塔”满足最底层的石头数量为 $n \times n$,上面的石头数量依次往上递减为 $(n-1) \times (n-1),(n-2) \times (n-2)...$,直到最顶层的石块数量为 $1 \times 1$ ;另一种金字塔叫做 “低金字塔”,一个“低金字塔”满足最底层的石头数量为 $n \times n$,上面的石头数量依次往上递减为$(n-2) \times (n-2),(n-4) \times (n-4)...$ 显而易见,若 $n$ 为偶数,则一个“低金字塔”的最顶层石块数量为 $2 \times 2$,若为奇数则为 $1 \times 1$;我们把每个金字塔的层数定义为金字塔的高度 法老经过深思熟虑之后,又对他的金字塔们提出了一些要求: 1. 所有的石头都必须被用完,也就是说所有金字塔所用石头的数量之和必须等于 $N$ 2. 金字塔的数量必须多于 1 ,但是在此基础上需要使金字塔的数量**尽可能的少** 3. 所有的金字塔不能一样(比如建造两个高度为 3 的“高金字塔”是不合法的,但是建造一个高度为 3 的“高金字塔”和一个高度为 3 的“低金字塔”却是合法的) 4. 每个金字塔的高度**不能小于 2** 5. 在满足上述要求的前提下,尽量使每个金字塔**使用的石头数量尽可能的多** 法老手下的人们都懵了,现在他想请你找出最佳的建造金字塔的方案

输入格式

输入若干行,每行一个正整数 $N$,表示法老的石头数量,输入以一个 $0$ 结束

输出格式

输出若干行,输出每个测试点编号以及对应的金字塔建造方案,每个金字塔的建造方式以数字 + `H`/`L` 的格式显示,数字表示这个金字塔的高度,`H` 表示这个金字塔是一个“高金字塔”,`L` 表示这个金字塔是一个“低金字塔”;方案按照每个金字塔使用的石头数量从大到小排列输出,如果无法满足法老的要求,输出 ```impossible``` ## 样例 ### 样例输入#1 ``` 29 28 0 ``` ### 样例输出#1 ``` Case 1: 3H 3L 2H Case 2: impossible ``` (翻译 by [```_Smile_```](https://www.luogu.com.cn/user/469384))

说明/提示

$N \leqslant 10^6$