ამოხსნების სტატუსი

ამ გვერდზე თქვენ იხილავთ გაგზავნილი ამოხსნების სტატუსს.


გაგზავნის თარიღი: 12.09.2021 15:08:55

ამოცანა: მასივის ელემენტთა ნამრავლი

მომხმარებელი: TsotneB

ვერდიქტი: სრული ამოხსნა

შეფასება: 100.0 ქულა







#include <bits/stdc++.h>
using namespace std;
int main() {
    int n;
    cin>>n;
    vector <int> a;
    int neg = 0;
    for (int i=0;i<n;i++) {
        int x;
        cin>>x;
        a.push_back(x);
        if (x < 0) neg++;
    }
    if (n==1) {
        cout<<a[0];
        return 0;
    }
    sort(a.begin(),a.end());
    int ind = n-1;
    int ans = 0;
    while (ind>=0 && a[ind] > 0) {
        if (ans == 0) ans++;
        ans*=a[ind];
        ind--;
    }
    int numNeg = (neg/2)*2;
    for (int i=0;i<numNeg;i++) {
        if (ans == 0) ans++;
        ans *= a[i];
    }
    cout<<ans<<endl;
    return 0;
}

ტესტები

შემავალი მონაცემები
7
5 -3 0 2 0 -2 -5
გამომავალი მონაცემები
150
თქვენი პასუხი
150
ჩეკერის პასუხი
YES
შემავალი მონაცემები
10
1 1 1 1 1 1 0 0 0 0
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES
შემავალი მონაცემები
10
-1 -1 -1 -1 -1 0 0 0 0 0
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES
შემავალი მონაცემები
10
1 2 3 4 5 -100 0 1 0 9
გამომავალი მონაცემები
1080
თქვენი პასუხი
1080
ჩეკერის პასუხი
YES
შემავალი მონაცემები
10
-20 0 1 2 3 -20 0 0 1 -20
გამომავალი მონაცემები
2400
თქვენი პასუხი
2400
ჩეკერის პასუხი
YES
შემავალი მონაცემები
5
-100 0 0 0 0
გამომავალი მონაცემები
0
თქვენი პასუხი
0
ჩეკერის პასუხი
YES
შემავალი მონაცემები
6
2 2 2 0 -100 2
გამომავალი მონაცემები
16
თქვენი პასუხი
16
ჩეკერის პასუხი
YES
შემავალი მონაცემები
12
-1 -1 -2 -2 -30 0 0 0 1 1 10 10
გამომავალი მონაცემები
12000
თქვენი პასუხი
12000
ჩეკერის პასუხი
YES
შემავალი მონაცემები
13
0 1 2 3 4 5 6 7 8 9 10 -11 0
გამომავალი მონაცემები
3628800
თქვენი პასუხი
3628800
ჩეკერის პასუხი
YES
შემავალი მონაცემები
1
47
გამომავალი მონაცემები
47
თქვენი პასუხი
47
ჩეკერის პასუხი
YES