//  Data Structures with Java by John R. Hubbard
//  Copyright McGraw-Hill, 2001
//  Problem 2.33 on page 51
//  Finding palindromic primes

import schaums.dswj.Primes;

public class Pr0233
{ public static void main(String[] args) 
  { final int N=1000;
    Primes.setSize(N);
    for (int i=0; i<N; i++)
    { int p = Primes.next();
      if (isPalindromic(p)) System.out.print(p+"\t");
    }
    System.out.println();
  }
  
  private static boolean isPalindromic(int n)
  { if (n<0) return false;
    int p10=1;
    // make p10 is the greatest power of 10 that is < n
    while (p10<n)
      p10 *= 10;
    p10 /= 10; 
    while (n>9)
    { if (n/p10 != n%10) return false;
      n /= 10;    // remove rightmost digit from n
      p10 /= 10;
      n %= p10;  // remove leftmost digit from n
    }
    return true;  // single digit integers are palindromic
  }
}
