package main
import (
"fmt"
)
func main() {
var n int
if _, err := fmt.Scan(&n); err != nil {
return
}
a := make([]int, n)
for i := 0; i < n; i++ {
fmt.Scan(&a[i])
}
for i := 0; i < n-1; i++ {
if (a[i] == 2 && a[i+1] == 3) || (a[i] == 3 && a[i+1] == 2) {
fmt.Println("Infinite")
return
}
}
fmt.Println("Finite")
ans := 0
for i := 0; i < n-1; i++ {
if (a[i] == 1 && a[i+1] == 2) || (a[i] == 2 && a[i+1] == 1) {
ans += 3
} else if (a[i] == 1 && a[i+1] == 3) || (a[i] == 3 && a[i+1] == 1) {
ans += 4
}
}
for i := 0; i < n-2; i++ {
if a[i] == 3 && a[i+1] == 1 && a[i+2] == 2 {
ans -= 1
}
}
fmt.Println(ans)
}