Submission #260150

#TimeUsernameProblemLanguageResultExecution timeMemory
260150sckmdBaloni (COCI15_baloni)C++14
0 / 100
84 ms131076 KiB
#include <bits/stdc++.h>

using namespace std;
#define MAXN 1000005
bool done[MAXN];
queue <int> ids[MAXN];
int h[MAXN];

void go(int height)
{
  if(ids[height].empty())return ;
  int idx = ids[height].front();
  ids[height].pop();
  done[idx]=true;
  go(height-1);
}

int main()
{
  ios_base::sync_with_stdio(false);
  int n;
  cin >> n;
  for(int i = 1; i <= n; i++)
  {
    cin >> h[i];
    ids[h[i]].push(i);
  }
  int ans = 0;
  for(int i = 1; i <= n; i++)
  {
    if(!done[i])go(h[i]),ans++;
  }
  cout << ans;
  return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...