Cześć, napisałem rozwiązanie do zadania agario (link do treści: https://szkopul.edu.pl/problemset/problem/QgFenN44XX_a8nX7RPmBNph4/statement/) i dostaje jedynie 60/100pkt. Mam gdzieś błąd w wypisywanie "NIE", jednak kompletnie nie jestem w stanie go znaleźć. Może ma ktoś jakiś pomysł? O to kod:
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 2e5 + 5;
int n;
int main()
{
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int answer = 0;
cin >> n;
vector<int> t(n);
for(int i = 0; i < n; i++)
{
cin >> t[i];
}
sort(t.begin(), t.end());
int mass = 2;
int maxMass = t[n - 1];
vector<int> v;
int ind = 0;
while(mass < maxMass)
{
while(t[ind] < mass && ind < n)
{
v.push_back(t[ind]);
ind++;
}
mass += v.back();
answer++;
v.pop_back();
if(v.empty() && mass <= t[ind])
{
cout << "NIE" << '\n';
return 0;
}
}
cout << answer;
}
Z góry dzięki ;)