9867 | 2024. 03. 13 16:11:49 | Gervid | Bányász RPG (40 pont) | cpp17 | Időlimit túllépés 24/40 | 400ms | 7408 KiB |
#include <iostream>
#include <set>
using namespace std;
int main()
{
unsigned int n, i, xp = 0, minutes = 0, max, maxi, min = 2147483647, mini;
cin >> n;
unsigned int* xpthreshold = new unsigned int[n];
unsigned int* remaining = new unsigned int[n];
for (i = 0; i < n; i++)
{
cin >> xpthreshold[i];
}
for (i = 0; i < n; i++)
{
cin >> remaining[i];
}
set<unsigned int> done;
int lastsize = -1;
while (done.size() < n)
{
if (done.size() != lastsize)
{
lastsize = done.size();
min = 2147483647;
for (i = 0; i < n; i++)
{
if (done.count(i) == 0 && xpthreshold[i] < min)
{
min = xpthreshold[i];
mini = i;
if (min <= xp)
{
break;
}
}
}
}
if (xp >= min)
{
done.insert(mini);
minutes += remaining[mini];
xp += remaining[mini];
continue;
}
lastsize = -1;
while (xp < min && done.size() < n)
{
if (done.size() != lastsize)
{
lastsize = done.size();
max = 0;
for (i = 0; i < n; i++)
{
if (done.count(i) == 0 && xpthreshold[i] > max)
{
max = xpthreshold[i];
maxi = i;
}
}
}
if (remaining[maxi]-- <= 1)
{
done.insert(maxi);
}
minutes += 2;
xp++;
}
}
cout << minutes;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 24/40 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1812 KiB | |||
2 | Időlimit túllépés | 0/0 | 398ms | 1676 KiB | |||
3 | Elfogadva | 2/2 | 3ms | 2432 KiB | |||
4 | Elfogadva | 2/2 | 24ms | 2824 KiB | |||
5 | Időlimit túllépés | 0/2 | 351ms | 2332 KiB | |||
6 | Időlimit túllépés | 0/2 | 374ms | 2948 KiB | |||
7 | Időlimit túllépés | 0/2 | 374ms | 3664 KiB | |||
8 | Időlimit túllépés | 0/2 | 344ms | 3204 KiB | |||
9 | Elfogadva | 3/3 | 3ms | 4116 KiB | |||
10 | Elfogadva | 3/3 | 3ms | 4032 KiB | |||
11 | Elfogadva | 3/3 | 3ms | 3924 KiB | |||
12 | Elfogadva | 3/3 | 7ms | 4340 KiB | |||
13 | Elfogadva | 4/4 | 18ms | 4212 KiB | |||
14 | Elfogadva | 4/4 | 6ms | 4404 KiB | |||
15 | Időlimit túllépés | 0/2 | 400ms | 4608 KiB | |||
16 | Időlimit túllépés | 0/2 | 375ms | 5660 KiB | |||
17 | Időlimit túllépés | 0/2 | 365ms | 6328 KiB | |||
18 | Időlimit túllépés | 0/2 | 354ms | 7408 KiB |