iT邦幫忙

0

<<Deque-STL>> _HakerRank_C++_STL

  • 分享至 

  • xImage
  •  
#include <iostream>
#include <deque> 
using namespace std;

void printKMax(int arr[], int n, int k){
	//Write your code here.
    deque<int>  d(k);
    int max = 0 ;
    
    int i ;
    for (i = 0; i < k; i++) 
    {
        while ( (!d.empty()) && arr[i] >= arr[d.back()])
        {
            d.pop_back();
        }
        d.push_back(i);
    }
 
    for ( ; i < n; i++) 
    {
        cout << arr[d.front()] << " ";
 
        while ( (!d.empty()) && d.front() <= i - k)
            d.pop_front();
 
        while ( (!d.empty()) && arr[i] >= arr[d.back()])
            d.pop_back();
 
        d.push_back(i);
    }
 
    cout << arr[d.front()] << endl;
    //code end.
}

int main()
{
  
	int t;
	cin >> t;
	while(t>0)
     {
		int n,k;
    	cin >> n >> k;
    	int i;
    	int arr[n];
    	for(i=0;i<n;i++)
      		cin >> arr[i];
    	printKMax(arr, n, k);
    	t--;
  	}
  	return 0;
}

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言