155332025-02-20 11:07:05linhnkMaximális szorzat (50 pont)cpp17Hibás válasz 47/5090ms1564 KiB
#include <iostream>
#include <bits/stdc++.h>
#include<queue>

using namespace std;

int main()
{
    int n, k, a, ne=0, b;
    cin>>n>>k>>b;
    priority_queue <int, vector<int>, greater<int>> kevin;
    priority_queue <int, vector<int>, greater<int>> bence;
    for(int i=0; i<n; i++){
        cin>>a;
        kevin.push(a);
        if(a<0){
            ne++;
        }
    }
    if(ne<b){
        cout<<"-1";
        return 0;
    }
    for(int i=0; i<b; i++){
        bence.push(kevin.top());
        kevin.pop();
        }
    if(kevin.size()==0){
        for(int i=0; i<k; i++){
        bence.push(bence.top()+1);
        if(bence.top()==-1){
            cout<<-1;
            return 0;
        }
        bence.pop();
    }
    }
    for(int i=0; i<k; i++){
        kevin.push(kevin.top()+1);
        kevin.pop();
    }
    long long d = 1;
    while(bence.size()>0){
        d = (d * (long long)(bence.top()))%1000000007;
        bence.pop();
    }
    while(kevin.size()>0){
        d = (d * (long long)(kevin.top()))%1000000007;
        kevin.pop();
    }
    cout<<d;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base47/50
1Elfogadva0/01ms508 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/01ms316 KiB
4Elfogadva0/01ms316 KiB
5Elfogadva0/06ms504 KiB
6Elfogadva2/21ms500 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms316 KiB
10Elfogadva2/27ms496 KiB
11Elfogadva2/265ms884 KiB
12Elfogadva1/171ms888 KiB
13Elfogadva1/12ms316 KiB
14Elfogadva1/18ms408 KiB
15Hibás válasz0/143ms736 KiB
16Elfogadva1/145ms980 KiB
17Hibás válasz0/143ms944 KiB
18Elfogadva1/110ms696 KiB
19Elfogadva1/181ms1512 KiB
20Elfogadva1/168ms1564 KiB
21Elfogadva1/190ms1440 KiB
22Elfogadva1/134ms1504 KiB
23Elfogadva1/179ms1192 KiB
24Elfogadva1/172ms1020 KiB
25Elfogadva2/21ms316 KiB
26Elfogadva2/27ms508 KiB
27Elfogadva2/250ms848 KiB
28Elfogadva1/152ms944 KiB
29Elfogadva2/219ms688 KiB
30Elfogadva1/179ms1452 KiB
31Hibás válasz0/148ms944 KiB
32Elfogadva2/22ms556 KiB
33Elfogadva2/279ms1424 KiB
34Elfogadva1/179ms1452 KiB
35Elfogadva2/282ms1452 KiB
36Elfogadva2/279ms1452 KiB
37Elfogadva2/279ms1452 KiB
38Elfogadva2/279ms1452 KiB
39Elfogadva1/12ms316 KiB