正文

pku18442007-08-17 23:39:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/liuwg/28609.html

分享到:

#include<stdio.h>#include<math.h>int main(){int n,i,sum;while(scanf("%d",&n)!=EOF){   i=(sqrt(1+8*n)-1)/2;   sum=(i+1)*i/2;   while(sum<n) sum+=++i;   if((sum-n)%2==0) printf("%d\n",i);   else printf("%d\n",i&1?i+2:i+1);}return 0;} 或者:#include<iostream> #include<cmath> using namespace std; int main() { int s,n,t; while(cin>>s) { n=sqrt(s*2); t=(n+1)*n/2; if(t<s) { n++; t+=n; } if((t-s)%2==0) { cout<<n<<endl; } else { if(n%2==0) cout<<n+1<<endl; else cout<<n+2<<endl; } } return 0; }

阅读(2130) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册