#include <bits/stdc++.h>
int n, m;
int a[111];
void marota() {
  std::cin >> n;
  std::cin >> a[1];
  int res = 0;
  for (int i = 2; i <= n; i++) {
    std::cin >> a[i];
    switch (a[i]) {
      case 1: {
        res += 3;
        if (a[i - 1] == 3) res++;
      } break;
      case 2: {
        res += 3;
        if (a[i - 2] == 3) res--;
        if (a[i - 1] == 3) {
          std::cout << "Infinite";
          return;
        }
      } break;
      case 3: {
        res += 4;
        if (a[i - 1] == 2) {
          std::cout << "Infinite";
          return;
        }
      } break;
    }
  }
  std::cout << "Finite\n";
  std::cout << res;
}
int main() {
  std::ios_base::sync_with_stdio(false);
  std::cin.tie(0);
  std::cout.tie(0);
  marota();
  return 0;
}
