Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

道理其实很简单,终于有一题一次AC了

Posted by HenrySnoopy at 2008-08-05 16:17:16 on Problem 1032
   我们首先先撇开“每组的人数不同”这一约束条件,我们发现如10可以拆成5+5,它的乘积最大,而5又可拆成2+3;2*3>5;故我们发现每次的每一个数都拆成两个相等或相差1的两个数乘积最大。而最大的当然是一直拆到出现2;
   我们在回来考虑“每组的人数不同”这一约束条件;每组的人数不能相等,但我们又要使数拆成最小的部分(最好拆到出现2),比如说2.3.4~~,那我们大可从2加起,2+3+4+~~~一直加到接近所要求的数;如26我们可以用个循环得到2+3+4+5+6,然后让它停下,此时还剩余6(26-2-3-4-5-6)没用完;那我们就从加数序列的最大那个数开始倒序一次加一,这样过后加数序列就变成了3+4+5+6+7了,但还有1没用啊,当然加给最大的那个7(这个过程用一个取模运算就行了);所以最后答案是3+4+5+6+8.
   呵呵,我觉得自己的方法很感性的,没有什么理论证明,只是凭着感觉走,幸运的是对了。如有不足,还请大家多多指教!!

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator