#include<iostream>usingnamespace std;constint N =1000010;int num[N], q[N];intmain(){int n, k;
cin >> n >> k;for(int i =0; i < n; i ++) cin >> num[i];int head =0, end =-1;for(int i =0; i < n; i ++){if(head <= end && i - k +1> q[head]) head ++;while(head <= end && num[q[end]]> num[i]) end --;
q[++ end]= i;if(i >= k -1) cout << num[q[head]]<<" ";}
cout << endl;
head =0, end =-1;for(int i =0; i < n; i ++){if(head <= end && i - k +1> q[head]) head ++;while(head <= end && num[q[end]]<= num[i]) end --;
q[++ end]= i;if(i >= k -1) cout << num[q[head]]<<" ";}
cout << endl;return0;}