Query Avanzate sulla Somma di Sottoinsiemi

Dato un insieme di n numeri , si richiede di eseguire q interrogazioni. Ogni interrogazione è di uno dei due tipi:

  • Tipo 1: Verificare se esiste un sottoinsieme di numeri la cui somma sia pari a s.

  • Tipo 2: Rimuovere dal set il numero s indicato.

Input

La prima riga dell’input contiene un singolo intero n (1 ≤ n ≤ 300), che specifica quanti numeri ci sono nell’insieme. La seconda riga contiene n interi separati da spazio , ossia gli elementi dell’insieme.

La terza riga dell’input contiene un singolo intero q , il numero di interrogazioni. Le successive q righe contengono ciascuna due interi separati da spazio, t e s :

  • Per un’interrogazione di Tipo 1, il primo intero t è 1 e il secondo intero s è la somma target.

  • Per un’interrogazione di Tipo 2, il primo intero t è 2 e il secondo intero s è l’elemento da rimuovere.

Il numero di interrogazioni di Tipo 2 non supera 200

Output

Per ogni interrogazione di Tipo 1, stampare Yes se esiste un sottoinsieme che soddisfa la somma richiesta, altrimenti stampare No.

Esempi

Input

Uscita

4
1 2 5 7
7
1 4
1 3
1 10
2 1
1 10
1 3
1 9

No
Yes
Yes
No
No
Yes

Constraints

Time limit: 8 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue