uva 10025

 1 #include<stdio.h>
 2 #include<math.h>
 3  int main()
 4  {
 5      int sn ,  k ,n,t,i;
 6      scanf("%d",&t) ;
 7      for(i = 0 ;i < t ;i++)
 8      {
 9          if(i)printf("\n");
10          scanf("%d",&k) ;
11          if(k<0)k = -k;
12          if(!k){printf("3\n"); continue ;}
13          n = (int)sqrt(k*2);
14          sn = (n+1)*n/2 ;
15 
16          while( 1 )
17          {
18              if(sn >= k) break;
19              n++ ;
20              sn+=n ;
21          }
22          while( (sn-k) % 2 !=0 )
23          {
24              n++ ;
25              sn+=n ;
26          }
27 
28          printf("%d\n",n);
29          }
30 
31      return 0 ;
32  }

刚开始 一直WA  原来是 换行 的问题  以后认真对待换行啊啊啊啊
!

posted @ 2013-11-14 21:17  shaughn  阅读(90)  评论(0编辑  收藏  举报