#include <iostream>
#include <vector>

using namespace std;

struct Niz {
	vector<int> nizovi;
};

//vector<vector<int>> nizov;
vector<int> pocetniNiz;
vector<int> pomocniNiz;

int main()
{
	int Q, N, Li, Ri;
	cin >> N;
	int i;
	Niz Nizovi[2000];
	for (i = 0; i < N; i++) {
		int x;
		cin >> x;
		pocetniNiz.push_back(x);
	}
	cin >> Q;
	int j, br = 0;
	int sledeci, trenutni;
	for (i = 0; i < Q; i++) {
		cin >> Li >> Ri;
		trenutni = pocetniNiz[Li-1];
		sledeci = pocetniNiz[Li];
		Nizovi[br].nizovi.push_back(trenutni);
		for (j = Li - 1; j < Ri-2; j++) {
			//Nizovi[br].nizovi.push_back(trenutni);
			if (sledeci >= trenutni) {
				Nizovi[br].nizovi.push_back(sledeci);
			}
			else {
				br++;
				Nizovi[br].nizovi.push_back(sledeci);
			}
			trenutni = sledeci;
			sledeci = pocetniNiz[j + 2];
		}
		if (br < 2) {
			cout << "DA" << endl;
		}
		else if (br > 2) {
			cout << "NE" << endl;
		}
		else {
			if (Nizovi[0].nizovi.at(Nizovi[0].nizovi.size()) >= Nizovi[1].nizovi[1]) {
				cout << "DA"<<endl;
			}
			else {
				cout << "NE"<<endl;
			}
		}
	}
	/*for (i = 0; i < br; i++) {
		for (j = 0; j < Nizovi[br].nizovi.size(); j++) {
			cout << Nizovi[i].nizovi[j] << ' ';

		}
		cout << endl;
	}*/
}