using System; using System.Collections.Generic; using static System.Console; using System.Linq; class yuki319 { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); static int[][] NArr(int n) => Enumerable.Repeat(0, n).Select(_ => NList).ToArray(); static void Main() { var n = NN; var a = NList; var list = LCT(a); if (Check(list)) { WriteLine(list.Last()); } else { WriteLine(0); } } static bool Check(List list) { if (list.Count == 1) return true; for (var i = 1; i < list.Count; i += 2) if (list[i] != 0) return false; if (list[0] == 0 || list[2] == 0 || list[0] == list[2]) return false; for (var i = 4; i < list.Count; i += 4) if (list[0] != list[i]) return false; for (var i = 6; i < list.Count; i += 4) if (list[2] != list[i]) return false; return true; } static List LCT(int[] list) { var nl = new List(list.Length - 2); for (var i = 0; i < list.Length - 2; ++i) { if (list[i] == (list[i + 1] + 1) % 3 && list[i] == (list[i + 2] + 2) % 3) nl.Add(2); else if (list[i + 1] == (list[i] + 1) % 3 && list[i + 2] == (list[i] + 2) % 3) nl.Add(1); else nl.Add(0); } return nl; } }