description: Polycarp likes squares and cubes of positive integers. Here is the beginning of the sequence of numbers he likes: 1, 4, 8, 9, ....
  
  For a given number n, count the number of integers from 1 to n that Polycarp likes. In other words, find the number of such x that x is a square of a positive integer number or a cube of a positive integer number (or both a square and a cube simultaneously).
  
  Input
  
  The first line contains an integer t (1 ≤ t ≤ 20) — the number of test cases.
  
  Then t lines contain the test cases, one per line. Each of the lines contains one integer n (1 ≤ n ≤ 10^9).
  
  Output
  
  For each test case, print the answer you are looking for — the number of integers from 1 to n that Polycarp likes.
  
  Example
  
  Input
  
  
  6
  10
  1
  25
  1000000000
  999999999
  500000000
  
  
  Output
  
  
  4
  1
  6
  32591
  32590
  23125
solution: import java.util.*;
  import java.io.*;
  import java.lang.*;
  import java.math.*;
          
           
           
  public class test2{
             public static boolean cp(int a) {
                for(int j=2;j*j<=a;j++)
                {
                   if(a%j==0)
                   {
                      return false;
                   }
                }
                return true;
             }
    public static int gcd(int a, int b) 
      { 
      if (a == 0) 
          return b;  
      return gcd(b % a, a);  
      } 
      
      public static long fr(long a) 
      { 
      long j=1;    
      for(j=1;j*j<=a;j++)
                {
                   continue;
                }
                
                return j-1;
      } 
        
  
            public static void main (String [] args) throws IOException
            {
             
          	  
          	  try {
          		  Scanner sc=new Scanner(System.in);
          		  
          		     int test=sc.nextInt();
          		     
          		     for(int t=0;t<test;t++)
          		     {
          		       
          		       long n=sc.nextLong();
          		       
          		       HashSet<Long> hs=new HashSet<Long>();
          		       
          		       long root=fr(n);
          		       
          		       for(long i=1;i<=root;i++)
          		       {
          		           if(i*i<=n)
          		           hs.add(i*i);
          		           
          		           if((i*i*i)<=n)
          		           hs.add((i*i*i));
          		           
          		           
          		       }
          		       
          		       System.out.println(hs.size());
          		     }
  
                    
          	  }
          	  
          	  catch (Exception e) {
          		return;
          	}
           
          }
           
          }  