kristina7

Опсег

Nov 2nd, 2016
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.34 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.InputStreamReader;
  3. import java.util.StringTokenizer;
  4.  
  5. public class Range {
  6.      static long s(long x)
  7.         {
  8.             long suma=0;
  9.             while(x != 0){
  10.                  long t = x%10;
  11.                  suma+=t;
  12.                  x/=10;
  13.                 }
  14.             return suma;
  15.         }
  16.          
  17.     static long proveri(long N, long A, long B) {
  18.         // Vasiot kod tuka
  19.         if(A==B) return -1;
  20.         if((A*A)+s(A)+(200*A) == N)return A;
  21.         if((B*B)+s(B)+(200*B) == N )return B;
  22.        
  23.       long i;
  24.       long mid = (A+B)/2;
  25.       long temp =  (mid*mid) + s(mid) + (200*mid);
  26.       if(temp == N)return mid;
  27.       else if(temp > N ){
  28.           return proveri(N,A,mid);
  29.       }
  30.         else if(temp<N){
  31.            return proveri(N,mid,B);
  32.            
  33.       }
  34.       return -1;
  35.      
  36.     }
  37.    
  38.     public static void main(String[] args) throws Exception {
  39.         int i,j,k;
  40.        
  41.         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  42.        
  43.         long N = Long.parseLong(br.readLine());
  44.        
  45.         StringTokenizer st = new StringTokenizer(br.readLine());
  46.         long A = Long.parseLong(st.nextToken());
  47.         long B = Long.parseLong(st.nextToken());
  48.        
  49.         long res = proveri(N, A, B);
  50.         System.out.println(res);
  51.        
  52.         br.close();
  53.        
  54.     }    
  55. }
Advertisement
Add Comment
Please, Sign In to add comment