using System;

namespace ZADATAK_1_TAKMICENJE
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            int[] a = new int[n];
            string[] unos = Console.ReadLine().Split();
            for (int i = 0; i < n; i++)
            {
                a[i] = int.Parse(unos[i]);
            }
            int q = int.Parse(Console.ReadLine());
            bool[] mogucnosti = new bool[q];
            for (int i = 0; i < q; i++)
            {
                unos = Console.ReadLine().Split();
                int l = int.Parse(unos[0]) - 1, r = int.Parse(unos[1]) - 1;
                mogucnosti[i] = moguce(a, l, r);
            }
            foreach (var x in mogucnosti)
            {
                if(x)
                    Console.WriteLine("DA");
                else
                    Console.WriteLine("NE");
            }
        }

        static bool moguce(int[] a, int l, int r)
        {
            int zaSkloniti = 0, i = l, prethodni = Int32.MinValue;
            while(i < r && zaSkloniti < 2)
            {
                if (prethodni > a[i])
                {
                    zaSkloniti++;
                }
                prethodni = a[i];
                i++;
            }
            if (zaSkloniti < 2)
                return true;
            return false;
        }
    }
}