using System; class Program { static void Main() { int N = int.Parse(Console.ReadLine()!); int[] A = Array.ConvertAll(Console.ReadLine()!.Split(), int.Parse); int count = 0; for (int l = 0; l < N; l++) { HashSet set = new HashSet(); int maxVal = int.MinValue; int minVal = int.MaxValue; for (int r = l; r < N; r++) { if (set.Contains(A[r])) break; // 重複したら終了 set.Add(A[r]); maxVal = Math.Max(maxVal, A[r]); minVal = Math.Min(minVal, A[r]); if (r - l + 1 >= 3) { if (A[l] == maxVal || A[r] == maxVal || A[l] == minVal || A[r] == minVal) count++; } } } Console.WriteLine(count); } }