152812025-02-18 08:24:31tamasnagyMaximális szorzat (50 pont)cpp17Hibás válasz 0/50600ms920 KiB
#include <iostream>
using namespace std;
int a[100001];
void rendez(int n,int a[]) {
    for (int i = 0; i < n - 1; i++) {
        for (int j = i + 1; j < n; j++) {
            if (a[i] > a[j]) {
                swap(a[i], a[j]);
            }
        }
    }
}
int main()
{
    int n, m, k;
    cin >> n >> m >> k;
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    rendez(n, a);
    int x = 0;
    while (a[x] < 0) {
        x++;
    }
    if (x > k) {
        while (x > k && m>0) {
            x--;
            m -= abs(a[x]);
            a[x] = 0;
        }
        
    }
    while (m) {
        int i = x+1;
        a[x]++;
        m--;
        while (a[i] < a[x] && m && i<n) {
            a[i]++;
            m--;
            i++;
        }
    }
    int s = 1;
    for (int i = 0; i < n; i++) {
        s *= a[i];
    }
    if (x > k) {
        cout << -1;
    }
    else {
        cout << s;
    }
    

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms500 KiB
3Elfogadva0/01ms316 KiB
4Elfogadva0/01ms316 KiB
5Hibás válasz0/090ms444 KiB
6Hibás válasz0/21ms532 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/24ms412 KiB
10Hibás válasz0/2187ms444 KiB
11Időlimit túllépés0/2600ms540 KiB
12Időlimit túllépés0/1600ms664 KiB
13Hibás válasz0/13ms316 KiB
14Hibás válasz0/1246ms316 KiB
15Időlimit túllépés0/1582ms564 KiB
16Időlimit túllépés0/1578ms564 KiB
17Időlimit túllépés0/1589ms468 KiB
18Időlimit túllépés0/1600ms564 KiB
19Időlimit túllépés0/1579ms564 KiB
20Időlimit túllépés0/1583ms580 KiB
21Időlimit túllépés0/1583ms716 KiB
22Időlimit túllépés0/1600ms564 KiB
23Időlimit túllépés0/1586ms920 KiB
24Időlimit túllépés0/1580ms564 KiB
25Hibás válasz0/21ms316 KiB
26Hibás válasz0/2217ms444 KiB
27Időlimit túllépés0/2600ms560 KiB
28Időlimit túllépés0/1588ms564 KiB
29Időlimit túllépés0/2588ms564 KiB
30Időlimit túllépés0/1583ms564 KiB
31Időlimit túllépés0/1582ms540 KiB
32Hibás válasz0/22ms316 KiB
33Időlimit túllépés0/2600ms564 KiB
34Időlimit túllépés0/1579ms564 KiB
35Időlimit túllépés0/2584ms564 KiB
36Időlimit túllépés0/2579ms564 KiB
37Időlimit túllépés0/2588ms564 KiB
38Időlimit túllépés0/2575ms564 KiB
39Hibás válasz0/11ms316 KiB