#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
    int t; scanf("%d",&t);
    int n,k; scanf("%d %d",&n, &k);
    bool p13=true, p3=true;
    vector<ll> a(n+1);
    for(int i=1;i<=n;i++){
        scanf("%lld",&a[i]);
        if(a[i]!=i) p13=false;
        if(i>1 and a[i]!=a[i-1]) p3=false;
    }
    if(p13){
        if(k>0){
            if(k==n){
                printf("DA\n");
                if(t==1){
                    for(int i=1;i<=n;i++){
                        printf("%lld ",a[i]);
                    }
                }
            }
            else if(k<n){
                if(n%2!=k%2){
                    printf("NE\n");
                }
                printf("DA\n");
                if(t==1){
                    int i=1, j=n;
                    int s=0;
                    while(i<=n-(n-k)/2){
                        if(s<(n-k)/2){
                            printf("%lld %lld ",a[j],a[i]);
                            j--, i++;
                            s++;
                        }
                        else{
                            printf("%lld ",a[i]);
                            i++;
                        }
                    }
                }
            }
        }
        else if(k<0){
            printf("NE");
        }
    }
    else if(p3){
        if(n<a[0] and a[0]>0)
            printf("NE\n");
        else if(abs(a[0])==n and n==abs(k)){
            printf("DA\n");
            if(t==1){
                for(int i=1;i<=n;i++){
                    printf("%lld ",a[i]);
                }
            }
        }
    }
    return 0;
}