public class ilo { public static void iloczyn(int [] cases){ int i; boolean done; for(Integer number : cases){ i = 0; done = false; while(number >= fib(i)){ if(number == fib(i)){ done = true; break; } i++; } if(!done){ i = 2; while(number >= fib(i)){ for(int j = 3; number >= fib(i) * fib(j); j++){ if(number == fib(i) * fib(j)){ done = true; break; } } i++; } } if(done) System.out.println("TAK"); else System.out.println("NIE"); } } public static int fib(int n){ int prev = 0, next = 1, result = 0; for (int i = 1; i < n; i++) { result = prev + next; prev = next; next = result; } if(n == 1) result = 1; return result; } public static void main(String[] args) { int t; int [] cases; java.util.Scanner scanner = new java.util.Scanner(System.in); t = scanner.nextInt(); cases = new int[t]; for(int i = 0; i < t; i++) cases[i] = scanner.nextInt(); scanner.close(); iloczyn(cases); } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | public class ilo { public static void iloczyn(int [] cases){ int i; boolean done; for(Integer number : cases){ i = 0; done = false; while(number >= fib(i)){ if(number == fib(i)){ done = true; break; } i++; } if(!done){ i = 2; while(number >= fib(i)){ for(int j = 3; number >= fib(i) * fib(j); j++){ if(number == fib(i) * fib(j)){ done = true; break; } } i++; } } if(done) System.out.println("TAK"); else System.out.println("NIE"); } } public static int fib(int n){ int prev = 0, next = 1, result = 0; for (int i = 1; i < n; i++) { result = prev + next; prev = next; next = result; } if(n == 1) result = 1; return result; } public static void main(String[] args) { int t; int [] cases; java.util.Scanner scanner = new java.util.Scanner(System.in); t = scanner.nextInt(); cases = new int[t]; for(int i = 0; i < t; i++) cases[i] = scanner.nextInt(); scanner.close(); iloczyn(cases); } } |