My issue
Why do I get a time limit exceeded in half of my test cases. The algorithm I have used is to sort the current total citizens, execute richest and set it to 0 so it does not repeat when sorted in descending order
My code
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int largest(int ctz[],int n, int v){
sort(ctz, ctz + n+1, greater<int>());
cout << ctz[0] << endl;
ctz[0] = 0;
return 0;
}
int main() {
// your code goes here
int n,m;
cin >> n >> m;
int ctz[n], behead[m];
int v = 0;
for(int i = 0; i < n+m; i++)
{
int a;
cin >> a;
if (a == -1)
{
//cout << v << endl;
v++;
largest(ctz,i-v,v-1);
}
else
{
ctz[i-v] = a;
//cout << ctz[i-v] << endl;
}
}
/*
for(int y = 0; y < n; y++)
{
cout << ctz[y] << endl;
}
cout <<endl;*/
return 0;
}
Problem Link: CodeChef: Practical coding for everyone