aboutsummaryrefslogtreecommitdiff
path: root/leetcode/lc-690-employee-importance.rkt
blob: 1fb3fcc0d08d917291f0617907ec386dc8393326 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#lang racket

(define/contract (sum-even-after-queries A queries)
  (-> (listof exact-integer?)
      (listof (listof exact-integer?))
      (listof exact-integer?))
  (define array (list->vector A))
  (for/list ([query (in-list queries)])
    (vector-set! array
                 (second query)
                 (+ (first query) (vector-ref array (second query))))
    (for/sum ([element (vector-filter even? array)]) element)))

(sum-even-after-queries '[1 2 3 4] '[[1 0] [-3 1] [-4 0] [2 3]])