155332025-02-20 11:07:05linhnkMaximális szorzat (50 pont)cpp17Wrong answer 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;
}
SubtaskSumTestVerdictTimeMemory
base47/50
1Accepted0/01ms508 KiB
2Accepted0/01ms316 KiB
3Accepted0/01ms316 KiB
4Accepted0/01ms316 KiB
5Accepted0/06ms504 KiB
6Accepted2/21ms500 KiB
7Accepted2/21ms316 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms316 KiB
10Accepted2/27ms496 KiB
11Accepted2/265ms884 KiB
12Accepted1/171ms888 KiB
13Accepted1/12ms316 KiB
14Accepted1/18ms408 KiB
15Wrong answer0/143ms736 KiB
16Accepted1/145ms980 KiB
17Wrong answer0/143ms944 KiB
18Accepted1/110ms696 KiB
19Accepted1/181ms1512 KiB
20Accepted1/168ms1564 KiB
21Accepted1/190ms1440 KiB
22Accepted1/134ms1504 KiB
23Accepted1/179ms1192 KiB
24Accepted1/172ms1020 KiB
25Accepted2/21ms316 KiB
26Accepted2/27ms508 KiB
27Accepted2/250ms848 KiB
28Accepted1/152ms944 KiB
29Accepted2/219ms688 KiB
30Accepted1/179ms1452 KiB
31Wrong answer0/148ms944 KiB
32Accepted2/22ms556 KiB
33Accepted2/279ms1424 KiB
34Accepted1/179ms1452 KiB
35Accepted2/282ms1452 KiB
36Accepted2/279ms1452 KiB
37Accepted2/279ms1452 KiB
38Accepted2/279ms1452 KiB
39Accepted1/12ms316 KiB