#include <bits/stdc++.h>

using namespace std;

bool prov(int k, vector<int> &perm, vector<int> &v){
    int x = 0;
    for(int i = 0; i < v.size(); i++){
        if(x<=v[perm[i]]){
            x++;
        }else{
            x--;
        }
    }
    return (x==k);
}

bool komb(int j, vector<int> &perm, vector<int> &v, int k){
    if(j == perm.size()-1){
        return prov(k, perm, v);
    }
    for(int i = j+1; i < perm.size(); i++){
        int pom = perm[i];
        perm[i]=perm[j];
        perm[j]=pom;
        if(komb(j, perm, v, k))
            return true;
    }
    return false;
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t, n, k;
    cin >> t >> n >> k;
    vector<int> v(n);
    for(int i = 0; i < n; i++) cin >> v[i];
    if(t==0){
        int br = 0;
        int br2 = 0;
        for(int i = 0; i < n; i++){
            if(v[i]>=0)
                br++;
            if(v[i]<k)
                br2++;
        }
        if((n%2)==(k%2) && n>=k && br2>=k){
            cout << "DA\n";
        }else{
            cout << "NE\n";
        }
    }
    else{
        sort(v.begin(), v.end());
        int x = 0;
        for(int i = 0; i < n; i++){
            if(x<=v[i]){
                x++;
            }else{
                x--;
            }
        }
        if(x == k){
            cout << "DA\n";
            if(t==1){
                for(int i = 0; i < n; i++){
                    cout << v[i] << " ";
                }
                cout << "\n";
            }
        }else{
            cout << "NE\n";
        }
    }
    return 0;
}