246282026-02-13 08:37:26szjMaximális szorzat (50 pont)cpp17Hibás válasz 6/5059ms2740 KiB
#include <bits/stdc++.h>
#define ll long long
#define blugy %1000000007
using namespace std;
class cucc
{
public:
    bool operator()(const ll &x, const ll &y)const
    {
        return x < y;
    }
};
int main()
{
    //ifstream cin("f.txt");
    ios::sync_with_stdio(0);
    cin.tie(0);
    ll n, k, b, i, a, sum=1, parsum=0, el;
    cin >> n >> k >> b;
    priority_queue<ll, vector<ll>, cucc> nega;
    priority_queue<ll, vector<ll>, greater<ll>> pozi;
    for(i=0; i<n; i++)
    {
        cin >> a;
        if(a<0)nega.push(a);
        else pozi.push(a);
    }
    while(nega.size()>b)
    {
        k+=nega.top();
        nega.pop();
        pozi.push(0);
    }
    if(k<0)
    {
        cout << -1;
        return 0;
    }
    if(pozi.empty())
    {
        while(!nega.empty())
        {
            pozi.push(nega.top());
            nega.pop();
        }
    }
    if(!pozi.empty())
    {
        while(k!=0)
        {
            a = pozi.top();
            pozi.pop();
            pozi.push(a+1);
            k--;
        }
    }

    while(!pozi.empty())
    {
        sum=(sum*(abs(pozi.top())blugy))blugy;
        pozi.pop();
    }
    while(!nega.empty())
    {
        sum=(sum*(abs(nega.top()))blugy)blugy;
        nega.pop();
    }
    cout << -1;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/50
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/01ms316 KiB
3Hibás válasz0/01ms316 KiB
4Hibás válasz0/01ms316 KiB
5Hibás válasz0/04ms568 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/21ms316 KiB
10Hibás válasz0/24ms632 KiB
11Hibás válasz0/241ms1456 KiB
12Hibás válasz0/143ms1456 KiB
13Hibás válasz0/11ms316 KiB
14Hibás válasz0/14ms608 KiB
15Elfogadva1/18ms884 KiB
16Hibás válasz0/126ms1088 KiB
17Elfogadva1/18ms964 KiB
18Hibás válasz0/16ms952 KiB
19Hibás válasz0/156ms2740 KiB
20Hibás válasz0/150ms2628 KiB
21Hibás válasz0/159ms2732 KiB
22Elfogadva1/135ms2556 KiB
23Hibás válasz0/143ms1344 KiB
24Hibás válasz0/143ms1488 KiB
25Hibás válasz0/21ms316 KiB
26Hibás válasz0/24ms564 KiB
27Hibás válasz0/235ms1492 KiB
28Hibás válasz0/135ms1492 KiB
29Elfogadva2/224ms1012 KiB
30Hibás válasz0/135ms1340 KiB
31Elfogadva1/114ms1508 KiB
32Hibás válasz0/22ms316 KiB
33Hibás válasz0/235ms1424 KiB
34Hibás válasz0/135ms1396 KiB
35Hibás válasz0/237ms1452 KiB
36Hibás válasz0/235ms1368 KiB
37Hibás válasz0/234ms1384 KiB
38Hibás válasz0/235ms1548 KiB
39Hibás válasz0/12ms428 KiB