package main import . "fmt" func main() { var q,k int Scan(&q,&k) // [0,0] [0,1] [1,0] [1,1] sum<=2 // Q=1 -> 1,2 // [0,0,1] [0,1,1] [1,0,1] [1,1,0] sum<=2 // Q=2 -> 1,2 // [0,0,1,1] [0,1,1,1] [1,0,1,1] [1,1,0,0] sum<=3 // Q=3 -> 3,4 // [0,0,1,1,0] [0,1,1,1,0] [1,0,1,1,0] [1,1,0,0,1] sum<=3 // Q=4 -> 4,5 // [0,0,1,1,0,1] [0,1,1,1,0,1] [1,0,1,1,0,1] [1,1,0,0,1,1] sum<=4 // Q=5 -> 4,5 // [0,0,1,1,0,1,1] [0,1,1,1,0,1,1] [1,0,1,1,0,1,1] [1,1,0,0,1,1,1] sum<=5 // Q>=6 -> 6,7 // [0,0,1,1,0,1,1,0] [0,1,1,1,0,1,1,0] [1,0,1,1,0,1,1,0] [1,1,0,0,1,1,1,0] sum<=5 var ans bool switch q { case 1,2: ans = k >= 2 case 3: ans = k >= 3 case 4: ans = k >= 4 default: ans = k >= 5 } if ans { Println("Yes") } else { Println("No") return } ops := make([]string, 0, q) ops = append(ops, "1 2", "1 2", "3 4", "4 5", "4 5") for len(ops) < q { ops = append(ops, "6 7") } for _, op := range ops[:q] { Println(op) } }