Problem

6 /6


إيجاد رقم على قطعة

Problem

إعطاء مصفوفة a بطول n ( \ (1 & lt؛ = n & lt؛ = 10 ^ 6 \) ، \ (1 & lt؛ = a_i & lt؛ = 10 ^ 9 \) ). قدم أيضًا m ( \ (1 & lt؛ = m & lt؛ = 500 \) ) طلبات بحث مثل + ، l ، r ، k ( \ (1 & lt ؛ = l & lt؛ = r & lt؛ = n \) ، \ (- 10 ^ 9 & lt؛ = k & lt؛ = 10 ^ 9 \) ) واستعلامات مثل ؟ ، l ، r ، k ( \ (1 & lt؛ = l & lt؛ = r & lt؛ = n \) ، \ (- 10 ^ 9 & lt؛ = k & lt؛ = 10 ^ 9 \) ).

في الحالة الأولى ، يجب أن تضيف إلى الأرقام الموجودة في المقطع من l إلى r شاملًا ، الرقم k < / كود>.
في الحالة الثانية ، تحتاج إلى طباعة 1 إذا كان هناك رقم k على المقطع من l إلى r شاملًا ، وإلا اطبع 0 .

العناصر مرقمة من 1 إلى n .

مضمون أنه بعد أي طلب ، يقع أي عنصر من المصفوفة a في نطاق \ (- 10 ^ 9 \) حتى \ (10 ​​^ 9 \) شاملًا.

نبسب ؛

أمثلة <الجسم>
# إدخال الإخراج
1
5
1 2 1 1 3
3
؟ 1 4 3
* 2 3 2
؟ 1 4 3
0
1