问题 5011 --分糖游戏

5011: 分糖游戏

题目描述

  一群学生围成一圈,他们的老师坐在中间.每个学生开始都有一些糖果.当老师吹响口哨,每个学生都同时将自己的糖果分一半给他右边的人.如果有学生糖果的数目是奇数,那么老师就会给他补上一块糖果.游戏结束时,所有的学生拥有的糖果数目应该是相同的.试编程计算老师吹哨的次数和结束时学生拥有的糖果数目.如果游戏无法结束,那么应该给予提示.

输入

包括若干组测试,每一组的第一行仅有一个正整数表示参与游戏的学生人数.接下来一行有n个正整数,对应表示1~n号学生的初始糖果数(保证为偶数).输入文件以0为结束标志.

输出

输出有若干行,每一行代表一组测试信息的结果.对于每一组测试,如果无法结束则输出”No End!”;如果可以结束则一行两个正整数,分别表示老师吹哨的次数和结束时每个人的糖果数.

样例输入输出

输入#1 复制
4
2 4 6 8
6
36 2 2 2 2 2
0
输出#1 复制
4 8
15 14

提示

$40\%$ 的输入数据满足 $1 \leq n \leq 20 $
$ 100\%$ 的输入数据满足$1 \leq n \leq 40 $,且每个人的初始糖果数一定小于1000.

序号 标题 作者 发表时间 费用 订购数 操作