using System; using System.Collections.Generic; using System.Collections; using System.Collections.Specialized; using System.Linq; using System.Text; using System.IO; using System.Reflection; using static System.Math; using System.Numerics; static class Program{ const int mod=(int)1e9+7; static void Main(){ Sc sc=new Sc(); var n=sc.I; var a=sc.Ia2; a[0]=a[1]; a[n+1]=a[n]; var h=new int[2]; int p=0; var li=new List(); li.Add(0); li.Add(0); for(int i = 1;i<=n;i++) { if(a[i]==a[i-1]&&a[i]==a[i+1]){h[i&1]++;} if(a[i]==a[i-1]){p++;} else{ li.Add(p); p=1; } } li.Add(p); var dp=new int[li.Count]; dp[2]=li[2]; for(int i = 3;i(int n,Func f){var a=new T[n];for(int i=0;i(int n,Func f){var a=new T[n];for(int i=0;i(int n,Func f){var a=new T[n];for(int i=0;i(int n,Func f){var a=new T[n];for(int i=0;i