1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include<bits/stdc++.h>
using namespace std;
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
typedef tree<int,null_type,less<int>,rb_tree_tag,tree_order_statistics_node_update> ordered_set;
typedef long long ll;
typedef pair<ll,ll> pll;
typedef pair<ll,int> pli;
typedef pair<int,ll> pil;
typedef pair<int,int> pii;
const ll INFLL=1e18+7;
const int INF=1e9+7;
#define pb push_back
const int MAXN=5e5+7;
int arr[MAXN];
int pref[MAXN],suf[MAXN];
int main()
{
	ios_base::sync_with_stdio(0);
	int n,k; cin>>n>>k;
	for(int i=1;i<=n;++i) cin>>arr[i];
	int cnt=0;
	for(int i=1;i<n;++i){
		if(arr[i]<arr[i+1]) ++cnt;
	}
	if(cnt==n-1){
		cout<<"NIE\n";
		return 0;
	}
	if(k>3){
		vector<int> res;
		pii used={0,0};
		int extra_used=0;
		for(int i=1;i<n;++i){
			if(arr[i]>=arr[i+1]){
				if(i>1){
					res.pb(i-1);
					extra_used=i-1;
					--k;
				}
				res.pb(i);
				used.first=i;
				if(i<n-1){
					res.pb(i+1);
					used.second=i+1;
					--k;
				}
				break;
			}
		}
		k-=2;
		for(int i=1;i<=n;++i){
			if(k==0) break;
			if(used.first==i||used.second==i||extra_used==i) continue;
			res.pb(i);
			--k;
		}
		sort(res.begin(),res.end());
		cout<<"TAK\n";
		for(int v:res) cout<<v<<" ";
		cout<<"\n";
		return 0;
	}
	pref[1]=arr[1];
	for(int i=2;i<=n;++i) pref[i]=min(pref[i-1],arr[i]);
	for(int i=n;i>=1;--i) suf[i]=max(suf[i+1],arr[i]);
	if(k==3){
		for(int i=1;i<=n-2;++i){
			if(pref[i]>=arr[i+1]){
				cout<<"TAK\n";
				cout<<i<<" "<<i+1<<"\n";
				return 0;
			}
		}
		for(int i=n;i>=3;--i){
			if(suf[i]<=arr[i-1]){
				cout<<"TAK\n";
				cout<<i-2<<" "<<i-1<<"\n";
				return 0;
			}
		}
		cout<<"NIE\n";
		return 0;
	}
	for(int i=1;i<n;++i){
		if(pref[i]>=suf[i+1]){
			cout<<"TAK\n";
			cout<<i<<"\n";
			return 0;
		}
	}
	cout<<"NIE\n";
}