(define (three-seven? n v) (let loop ([c 0] [l 0] [r 0]) (cond [(= c 777) #t] [(> c 777) (loop (- c (vector-ref v l)) (+ l 1) r)] [(and (< c 777) (= r n)) #f] [else (loop (+ c (vector-ref v r)) l (+ r 1))]))) (define (main args) (let* ([n (read)] [m (read)]) (print (let loop ([x m] [v (make-vector n 0)]) (cond [(zero? x) "NO"] [else (let* ([av (vector-tabulate n (lambda (_) (read)))] [nv (vector-map + v av)]) (if (three-seven? n nv) "YES" (loop (- x 1) nv)))])))) 0)