宁波市第29届中小学生程序设计竞赛复赛试题(初中组) 联系客服

发布时间 : 星期一 文章宁波市第29届中小学生程序设计竞赛复赛试题(初中组)更新完毕开始阅读

宁波市第29届中小学生程序设计竞赛复赛试题 初中组

4. 马球比赛 (polo.pas/c/cpp)

【问题描述】

在解决了马语翻译问题后,马匹数量越来越多,不少乡镇都有了数量可观的马匹,开始出现马球比赛。乡镇之间决定进行马球联赛。

联赛的赛制,主要是比赛双方的马匹数量,成了一个急需解决的问题。首先,所有乡镇都要求,本乡镇所有的马匹都必须参赛,或者都不参赛(若组队的马匹数量不是该镇马匹数量的约数,将无法参赛)。其次,在本乡镇,选出最佳球队,参加乡镇间联赛。

现在,比赛组织方希望满足所有参赛乡镇的要求,并且使得决赛的马匹尽可能多,请你设计每个球队马匹的数量,使得决赛马匹数最大。注意,决赛至少有2个队伍晋级。

【输入】

第一行一个整数N,表示想要报名参赛的乡镇。

接下来N个用空格分开的整数a(i),表示第i个乡镇报名参赛的马匹数。

【输出】

计算出决赛最大参与的马匹数。

【输出输出样例1】 polo.in polo.out 3 1 3 6 6 【样例解释】 每个队伍3匹马,乡镇1无法参赛。乡镇2和3都可以进行比赛,决赛2个队伍,共6匹马。

【输出输出样例2】 polo.in polo.out 2 1 3 2 【样例解释】 每个队伍1匹马,因为至少需要2个队伍晋级。 【输出输出样例3】 polo.in polo.out 5 4 6 3 8 9 9 【样例解释】

每个队伍3匹马,乡镇2,3,5可以参赛。决赛3个队伍,9匹马。 【数据范围】

20%的数据2<=N<=100,1<=a(i)<=10000。 50%的数据2<=N<=20000。

100%的数据2<=N<=200000,1<=a(i)<= 2000000。

第 5 页 共 5 页