|  | 
|  | 
| вернуться в форум | WHY I GET WA ON TEST 10.. Послано Ghost  21 ноя 2007 07:02IF YOU KNOW , CAN U CONTACT WITH ME ..MY EMAIL IS ZELIN.HE@GMAIL.COM
 THX..
 #include <stdlib.h>
 #include <stdio.h>
 #include <math.h>
 long double f1[2001],f2[2001];
 int main()
 {
 int x , y , fx , fy , n ;
 double fn;
 scanf("%d%d%d%d%d",&x,&fx,&y,&fy,&n);
 f1[0] = 1 ; f1[1] = 0 ;
 f2[0] = 0 ; f2[1] = 1 ;
 if ( x > y )
 {
 int  tmp = x ;
 x = y ;
 y = tmp ;
 tmp = fx;
 fx = fy;
 fy = tmp;
 }
 int k ;
 int i;
 for ( i=x+2; i <= y ; i ++ )
 {
 if ( x < 0 ) k = -x + i;
 else k = i - x;
 f1[k] = f1[k-1]+f1[k-2];
 f2[k] = f2[k-1]+f2[k-2];
 }
 
 long double b = ceil(fy-f1[y-x]*fx)/(f2[y-x]);
 long double a = fx;
 long double c;
 if ( x+2 <= n )
 {
 for ( i = x+2 ; i <= n ; i ++ )
 {
 c = a + b ;
 a = b ; b = c ;
 }
 printf("%.0llf\n",c);
 }
 else
 {
 if (x == n ) printf("%.0llf\n",a);
 else if ( n == x + 1 ) printf("%.0llf\n",b);
 else
 {
 for (i = x ; i > n ; i -- )
 {
 c = b - a ;
 b = a ; a = c;
 }
 printf("%.0llf\n",c);
 }
 
 }
 
 system("PAUSE");
 return 0;
 }
Re: WHY I GET WA ON TEST 10.. I did similarly in C++ and was getting WA on #10. Later, I wrote the same solution in Java (with BigInteger) and worked. | 
 | 
|