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

namespace Poklon
{
    internal class Program
    {
        struct pokloncic
        {
            public long do_njega;
            public long broj;
        }
        struct upit
        {
            public long prvi;
            public long drugi;
        }
        static void Main(string[] args)
        {
            long n = long.Parse(Console.ReadLine());
            pokloncic[] niz = new pokloncic[n];
            string[] unos = Console.ReadLine().Split(' ');
            for(int i = 0; i < n; i++)
            {
                niz[i].broj = long.Parse(unos[i]);
            }
            long q = long.Parse(Console.ReadLine());
            upit[] upiti = new upit[q];
            for(int i = 0; i < q; i++)
            {
                string[] u = Console.ReadLine().Split(' ');
                upiti[i].prvi = long.Parse(u[0])-1;
                upiti[i].drugi = long.Parse(u[1])-1;
            }

            for(int i = 0; i < n-1; i++)
            {
                if(niz[i].broj > niz[i + 1].broj)
                {
                    niz[i + 1].do_njega = 1 + niz[i].do_njega;
                }
                else
                {
                    niz[i + 1].do_njega = niz[i].do_njega;
                }
            }
            for(int i = 0; i < q; i++)
            {
                long kol = niz[upiti[i].drugi].do_njega - niz[upiti[i].prvi].do_njega;
                if(kol == 0 || kol == 1)
                {
                    Console.WriteLine("DA");
                }
                else
                {
                    Console.WriteLine("NE");
                }
            }
            Console.ReadLine();
        }
    }
}