using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication6
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            string[] s = Console.ReadLine().Split();
            int[] a = new int[n];
            for(int i=0;i<n;i++)
            {
                a[i] = int.Parse(s[i]);
            }
            int q = int.Parse(Console.ReadLine());
            int[] l = new int[q];
            int[] r = new int[q];
            for(int i=0;i<q;i++)
            {
                string[] g = Console.ReadLine().Split();
                l[i] = int.Parse(g[0]);
                l[i]--;
                r[i] = int.Parse(g[1]);
                r[i]--;
            }
            gl(n, a, l, r, q);
            Console.ReadLine();
        }
        static void gl(int n,int[] a,int[] l,int[] r,int q)
        {
            for(int i=0;i<q;i++)
            {
                if (prov(n, a, l, r, q, i) == true)
                    Console.WriteLine("DA");
                else
                    Console.WriteLine("NE");
            }
        }
        //j=i za slanje
        static bool prov(int n,int[] a,int[] l,int[] r,int q,int j)
        {
            bool t = true;
            int prev = a[l[j]];
            for(int i=l[j];i<r[j];i++)
            {
                if(a[i]>=prev)
                {
                    prev = a[i];
                }
                else
                {
                    t = prov2(n,a, l[j], r[j], i - 1, i);
                    break;
                }
            }
            return t;
        }
        //q i j ==prev i a[i]
        static bool prov2(int n,int[] a,int l,int r,int q,int j)
        {
            bool t = true;
            int pre = a[0];
            for(int i=l;i<r;i++)
            {
                if(i==q)
                {
                    i++;
                }
                if(a[i]>=pre)
                {
                    pre = a[i];

                }
                else
                {
                    t = false;
                    break;
                }
            }
            bool k = true;
             pre = a[0];
            for (int i = l; i < r; i++)
            {
                if (i == j)
                {
                    if (i + 1 == r)
                    {
                        break;
                    }
                    else
                        i++;
                }
                if (a[i] >= pre)
                {
                    pre = a[i];

                }
                else
                {
                    k = false;
                    break;
                }
            }
            if (k == true || t == true)
                return true;
            return false;
        }
    }
}