题目描述
【题目描述】
波多黎各最近投票支持美国建国,这让国旗制作者非常兴奋。更新后的国旗上有51颗星,而不是现在的50颗星,这将导致美国国旗销量的大幅增长。目前50颗星的图案是5行6颗星,交错着4行5颗星。行交替出现,直到显示所有的星星。
此模式具有相邻行相差不超过一颗星的特性。我们用前两行中的恒星数来表示这种恒星排列:6,5。
具有相同属性的51星旗可以有三行9星,与三行8星交错(恒星排列为9,8)。相反,如果一个州退出联邦,一个有吸引力的恒星排列将是七排七颗星(7,7)。
如果标志图案满足以下条件,则在视觉上具有吸引力:
- 每隔一行都有相同数量的星星。
- 相邻的行相差不超过一颗星。
- 第一行的星星不能少于第二行。
你的团队看到的不仅仅是美国国旗短期改为51。你想垄断任何三个或更多州联盟的旗帜市场。给定要在国旗上绘制的星星的数量S,找到所有可能的视觉上有吸引力的国旗图案。
【输入】
输入由包含整数S(3≤S≤32767)的单行组成。
【输出】
在第一行,打印S,后跟冒号。然后,对于每一个具有视觉吸引力的S星标志,打印其恒星排列的表示,每行一个。
该恒星排列表示列表应按第一行中星星数量的升序输出;如果第一个行相同,请按第二行星星的数量升序输出。案例1-byS和S-by-1是微不足道的,因此不要打印这些排列。
恒星排列表示必须以“x,y”的形式打印,x和y之间只有一个逗号,没有其他字符。
【样本输入1】
3
【样本输出1】
3:
2, 1
【样本输入2】
50
【样本输出2】
50:
2, 1
2, 2
3, 2
5, 4
5, 5
6, 5
10, 10
13, 12
17, 16
25, 25
【样本输入3】
51
【样本输出3】
51:
2, 1
3, 3
9, 8
17, 17
26, 25
样例输入 复制
3
样例输出 复制
3:
2, 1