136002025-01-08 11:10:29ercseferencMaximális szorzat (50 pont)cpp17Hibás válasz 32/50600ms1268 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    long long n,k,b;
    cin>>n>>k>>b; vector<int>a(n);
    a.push_back(200001);
    for(int i=0; i<n; i++){cin>>a[i];}
    sort(a.begin(),a.end());
    long long p=b,s=0,mod=1000000007;
    while(a[p]<0 && p<n){s+=a[p]; a[p]=0; p++;}
    k+=s;
    if(k>=0){
        while(k>0)
            {for(int i=b; i<n; i++)
                {if(a[i]!=a[i+1]){a[i]++; k--; break;}}}
        p=1;
        for(int i=0; i<n; i++){p=p*a[i]%mod;}
        cout<<p<<endl;}
    else cout<<-1<<endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base32/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms508 KiB
3Elfogadva0/01ms316 KiB
4Elfogadva0/01ms316 KiB
5Elfogadva0/04ms484 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms316 KiB
10Hibás válasz0/26ms316 KiB
11Hibás válasz0/257ms1268 KiB
12Hibás válasz0/157ms1076 KiB
13Elfogadva1/11ms352 KiB
14Elfogadva1/18ms316 KiB
15Elfogadva1/120ms564 KiB
16Elfogadva1/164ms616 KiB
17Elfogadva1/121ms608 KiB
18Elfogadva1/110ms616 KiB
19Időlimit túllépés0/1600ms1076 KiB
20Időlimit túllépés0/1600ms1080 KiB
21Időlimit túllépés0/1600ms1076 KiB
22Időlimit túllépés0/1600ms1076 KiB
23Hibás válasz0/161ms1076 KiB
24Hibás válasz0/159ms1076 KiB
25Elfogadva2/21ms316 KiB
26Elfogadva2/26ms316 KiB
27Időlimit túllépés0/2600ms564 KiB
28Időlimit túllépés0/1600ms564 KiB
29Hibás válasz0/225ms564 KiB
30Elfogadva1/161ms1076 KiB
31Elfogadva1/143ms1076 KiB
32Elfogadva2/22ms508 KiB
33Elfogadva2/261ms1080 KiB
34Elfogadva1/161ms1076 KiB
35Hibás válasz0/263ms1076 KiB
36Elfogadva2/261ms1076 KiB
37Elfogadva2/261ms1076 KiB
38Elfogadva2/261ms1076 KiB
39Elfogadva1/11ms500 KiB