152372025-02-17 12:28:24tamasnagyMaximális szorzat (50 pont)cpp17Időlimit túllépés 1/50600ms748 KiB
#include <iostream>
using namespace std;
int a[100001];

int minkeres(int n) {
    int mini = a[0];
    int minin = 0;
    for (int i = 1; i < n; i++) {
        if (a[i] < mini) {
            mini = a[i];
            minin = i;
        }
    }
    return minin;
}
int minkeres0(int n) {
    int mini = 1000000000;
    int minin = 0;
    for (int i = 0; i < n; i++) {
        if (a[i] < mini && a[i]>=0) {
            mini = a[i];
            minin = i;
        }
    }
    return minin;
}
int main()
{
    int n, k, b;
    cin >> n >> k >> b;
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    int db=0;
    for (int i = 0; i < n; i++) {
        if (a[i] < 0) {
            db++;
        }
    }
    while (b < db) {
        int minindex=minkeres(n);
        k -= abs(a[minindex]);
        a[minindex] = 0;
        db--;
    }
    while (k) {
        int x = minkeres0(n);
        k--;
        a[x]++;
    }
    int s=1;
    for (int i = 0; i < n; i++) {
        s *= a[i];
    }
    if (db > b+1) {
        cout << -1;
    }
    else cout << s;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base1/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/01ms316 KiB
4Elfogadva0/01ms316 KiB
5Időlimit túllépés0/0598ms440 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/23ms352 KiB
10Hibás válasz0/2195ms440 KiB
11Időlimit túllépés0/2598ms748 KiB
12Időlimit túllépés0/1600ms644 KiB
13Időlimit túllépés0/1584ms316 KiB
14Időlimit túllépés0/1587ms316 KiB
15Időlimit túllépés0/1600ms440 KiB
16Időlimit túllépés0/1600ms472 KiB
17Időlimit túllépés0/1582ms564 KiB
18Elfogadva1/18ms564 KiB
19Időlimit túllépés0/1600ms564 KiB
20Időlimit túllépés0/1600ms568 KiB
21Időlimit túllépés0/1598ms728 KiB
22Időlimit túllépés0/1574ms564 KiB
23Időlimit túllépés0/1587ms592 KiB
24Időlimit túllépés0/1592ms560 KiB
25Hibás válasz0/24ms316 KiB
26Időlimit túllépés0/2600ms416 KiB
27Időlimit túllépés0/2578ms564 KiB
28Időlimit túllépés0/1584ms564 KiB
29Időlimit túllépés0/2587ms564 KiB
30Időlimit túllépés0/1600ms564 KiB
31Időlimit túllépés0/1578ms748 KiB
32Hibás válasz0/2200ms316 KiB
33Időlimit túllépés0/2583ms564 KiB
34Időlimit túllépés0/1600ms700 KiB
35Időlimit túllépés0/2578ms564 KiB
36Időlimit túllépés0/2600ms564 KiB
37Időlimit túllépés0/2589ms560 KiB
38Időlimit túllépés0/2578ms564 KiB
39Hibás válasz0/120ms316 KiB