using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static long[] NList => ReadLine().Split().Select(long.Parse).ToArray(); public static void Main() { Solve(); } static void Solve() { var c = NList; var (n, k) = (c[0], c[1]); var h = NList; var checkset = new HashSet{ n }; var ngset = new HashSet(); foreach (var hi in h) { for (var i = Math.Max(1, hi - 100); i <= hi; ++i) checkset.Add(i); ngset.Add(hi); } var checklist = new List(checkset); checklist.Sort(); for (var i = checklist.Count - 1; i >= 0; --i) { var cur = checklist[i]; if (!ngset.Contains(cur)) { if ((ngset.Contains(cur + 1) && ngset.Contains(cur + 6)) || (ngset.Contains(cur + 2) && ngset.Contains(cur + 5)) || (ngset.Contains(cur + 3) && ngset.Contains(cur + 4))) { ngset.Add(cur); } } if (ngset.Contains(cur) && ngset.Contains(cur + 1) && ngset.Contains(cur + 2) && ngset.Contains(cur + 3) && ngset.Contains(cur + 4) && ngset.Contains(cur + 5)) { WriteLine("No"); return; } } WriteLine(ngset.Contains(1) ? "No" : "Yes"); } }