136752025-01-08 12:33:21ercseferencMaximális szorzat (50 pont)cpp17Wrong answer 41/5059ms1080 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    long long n,k,b; //ifstream f("szamok.txt");
    cin>>n>>k>>b; vector<int>a(n);
    for(int i=0; i<n; i++){cin>>a[i];}
    sort(a.begin(),a.end());
    a.push_back(2147483647);
    long long p=b,s=0,mod=1000000007;
    while(a[p]<0 && p<n){s+=a[p]; a[p]=0; p++;}
    k+=s; int maxind=b;
    if(k>=0){
        while(k>0){
            p=maxind;
            while(a[p]==a[p+1] && p<n){p++;}
            maxind=p;
            for(int i=maxind; i>=b; i--){a[i]++; k--;
                if(k==0)break;}}
        p=1;
        for(int i=0; i<n; i++){p=p*a[i]%mod;}
        cout<<p<<endl;}
    else cout<<-1<<endl;
    return 0;
}

SubtaskSumTestVerdictTimeMemory
base41/50
1Accepted0/01ms316 KiB
2Accepted0/01ms316 KiB
3Accepted0/01ms316 KiB
4Accepted0/01ms316 KiB
5Accepted0/04ms436 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms316 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms316 KiB
10Accepted2/24ms432 KiB
11Accepted2/252ms1056 KiB
12Accepted1/156ms1056 KiB
13Accepted1/11ms316 KiB
14Accepted1/14ms316 KiB
15Accepted1/120ms604 KiB
16Accepted1/121ms608 KiB
17Accepted1/120ms612 KiB
18Accepted1/110ms612 KiB
19Wrong answer0/141ms1060 KiB
20Wrong answer0/130ms1060 KiB
21Wrong answer0/159ms1080 KiB
22Wrong answer0/125ms1060 KiB
23Accepted1/159ms1064 KiB
24Accepted1/156ms1052 KiB
25Accepted2/21ms316 KiB
26Accepted2/24ms340 KiB
27Wrong answer0/230ms564 KiB
28Wrong answer0/129ms564 KiB
29Wrong answer0/224ms608 KiB
30Accepted1/159ms1056 KiB
31Accepted1/143ms1060 KiB
32Accepted2/22ms500 KiB
33Accepted2/259ms1052 KiB
34Accepted1/159ms1060 KiB
35Accepted2/259ms1064 KiB
36Accepted2/259ms1060 KiB
37Accepted2/259ms1076 KiB
38Accepted2/259ms1064 KiB
39Accepted1/12ms508 KiB