Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

WWO_01_06 - Szybciej niż liniowo

Dla danego ciągu liczb będziemy wykonywać dwie operacje:

  1. Zwiększamy wszystkie liczby z przedziału [a, b] o v
  2. Odpowiadamy na pytanie, czy liczba stojąca na k-tej pozycji jest liczbą pierwszą

Zadanie to rozwiąż szybciej niż liniowo dla każdej modyfikacji przedziału.

Wejście

W pierwszym wieszu znajduje się jedna liczba całkowita n ∈ [5, 105] określająca ilość liczb w ciągu.

W drugim wierszu znajduje się n liczb naturalnych nie większych niż 1000, są to kolejne liczby ciągu.

Następnie dana jest jedna liczba całkowita q1 ∈ [1, 105] określająca liczbę modyfikacji przedziałów.

W kolejnych q1 wierszach znajdują się po trzy liczby całkowite a, b oraz v, takie że 1 ≤ abn oraz liczba v jest nie większa niż 100.

Następnie dana jest jedna liczba całkowita q2 ∈ [1, 1000] określająca liczbę zapytań.

Każde zapytanie składa się z jednej liczby q takiej, że 1 ≤ qn, na które odpowiadamy tak jeśli liczba na pozycji q jest pierwsza albo nie w przeciwnym wypadku.

Wyjście

Dla każdego zapytania tak albo nie w zależności od tego czy liczba stojąca na danej pozycji jest pierwsza czy też nie.

Przykład

Wejście:

5
1 2 2 1 4
3
1 5 1
2 3 2
2 5 3
3
1 
2 
5

Wyjście:

tak
nie
nie

Dodane przez:Marcin Kasprowicz
Data dodania:2020-07-10
Limit czasu wykonania programu:1s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM32-GCC COBOL D-CLANG D-DMD ELIXIR FANTOM GOSU GRV JS-MONKEY NIM OBJC OBJC-CLANG PICO RUST SCM qobi CHICKEN VB.NET

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.