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

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


გაგზავნის თარიღი: 16.04.2019 02:40:43

ამოცანა: უდიდესი დადებითი ნამრავლი

მომხმარებელი: edo-1999

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

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







#include <bits/stdc++.h>
using namespace std;
int main()
{   multiset <int> s;
    multiset <int> ::iterator it,it2;
    int n, r, c = 0,er, a = 1;
    cin >> n;
    for ( int i = 0; i < n; i++){
        cin >> r;
        if (r < 0){
            c++;
        }
        if (r !=  0)
            s.insert(r);
    }
    it = s.begin();
    it2 = s.begin();
    for ( int i = 1; i < c; i++){
        it2++;
    }
    if ( c % 2 == 1){
    if ( c == 1)
    s.erase(it);
    else
    s.erase(it2);
    }
    for (it = s.begin(); it != s.end(); it++){
        a = a * *it;
    }
    cout << a;
}

ტესტები

შემავალი მონაცემები
4
7 -2 -1 3
გამომავალი მონაცემები
42
თქვენი პასუხი
42
ჩეკერის პასუხი
YES
შემავალი მონაცემები
6
2 -4 0 0 0 1
გამომავალი მონაცემები
2
თქვენი პასუხი
2
ჩეკერის პასუხი
YES
შემავალი მონაცემები
1
7
გამომავალი მონაცემები
7
თქვენი პასუხი
7
ჩეკერის პასუხი
YES
შემავალი მონაცემები
3
-5 -5 -1
გამომავალი მონაცემები
25
თქვენი პასუხი
25
ჩეკერის პასუხი
YES
შემავალი მონაცემები
12
0 0 0 0 1 0 0 0 1 0 0 0
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES
შემავალი მონაცემები
11
-3 0 0 10 10 10 0 0 0 -7 -2
გამომავალი მონაცემები
21000
თქვენი პასუხი
21000
ჩეკერის პასუხი
YES
შემავალი მონაცემები
2
-4 -3
გამომავალი მონაცემები
12
თქვენი პასუხი
12
ჩეკერის პასუხი
YES
შემავალი მონაცემები
6
-2 -2 -2 -2 -2 -2
გამომავალი მონაცემები
64
თქვენი პასუხი
64
ჩეკერის პასუხი
YES
შემავალი მონაცემები
16
-2 -2 0 0 0 0 2 2 2 -2 -2 0 0 0 0 2
გამომავალი მონაცემები
256
თქვენი პასუხი
256
ჩეკერის პასუხი
YES
შემავალი მონაცემები
3
-1 0 1
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES