本文主要是介绍1032 Parliament,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
拆成从2开始的递增数列,余下的部分倒回去加2轮,证明比较多,可以看此题的Discuss
- //4540529_AC_47MS_424K
- /**********************************************************************
- * Online Judge : POJ
- * Problem Title : Parliament
- * ID : 1032
- * Date : 1/7/2009
- * Time : 22:27:43
- * Computer Name : EVERLASTING-PC
- ***********************************************************************/
- #include<iostream>
- using namespace std;
- int n,l,k;
- int main()
- {
- // freopen("in_1032.txt","r",stdin);
- while (cin>>n)
- {
- l=n;
- k=2;
- while (1)
- {
- if (l-k<0)
- {
- break;
- }
- l-=k;
- k++;
- }
- k--;
- for (int i=2;i<k;++i)
- {
- cout<<i+(i>k-l?1:0)<<' ';
- }
- if (k==l)
- {
- cout<<k+2<<endl;
- }
- else
- {
- cout<<k+(l!=0?1:0)<<endl;
- }
- }
- return 0;
- }
这篇关于1032 Parliament的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!