254322026-02-20 05:52:57fantomlanyMaximális szorzat (50 pont)cpp17Hibás válasz 1/50600ms796 KiB
#include <iostream>

using namespace std;

int sorozat[100000];

int main()
{
    int n,k,b/*, sorozat[10]*/, x=1, nullashelye=-1;
    long long szorzat=1;
    bool csere=1, csakmost=0;
    cin>>n>>k>>b;
    for(int i=0;i<n;i++)
    {
        cin>>sorozat[i];
    }
    while(csere)
    {
        csere=0;
        for(int i=0;i<n-x;i++)
        {
            if(sorozat[i]<sorozat[i+1])
            {
                swap(sorozat[i],sorozat[i+1]);
                csere=1;
            }
        }
        x++;
    }
    csere=0; x=0;
    while(!csere && x<n)
    {
        if(sorozat[x]==0)
        {
            nullashelye=x;
            csere=1;
        }
        x++;
    }
    x=b;
    for(int j=0;j<k;j++)
    {
        if(sorozat[x]<0)
        {
            sorozat[x]++;
        }
        else if(sorozat[x]==0 && x<n-1 && sorozat[x+1]<0)
             {
                 x++;
                 sorozat[x]++;
             }
             else if(sorozat [x]==0 && x<n-1)
                  {
                      sorozat[x]++;
                      if(x+1<n-1 && sorozat[x+1]==0)
                      {
                          x++;
                      }
                      else
                      {
                          x=b;
                          csakmost=1;
                      }
                  }
                  else
                  {
                      if(csakmost)
                      {
                          x=0;
                          csakmost=0;
                      }
                      sorozat[x]++;
                      if(sorozat[x]!=1 && x<n-1) x++;
                      else if(x==n-1)x=0;

                  }


    }
    for(int i=0;i<n;i++)
    {
        szorzat*=sorozat[i];
    }
    if(szorzat >= 0)
        cout<<szorzat;
    else cout<<-1;



    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base1/50
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/01ms316 KiB
3Hibás válasz0/01ms512 KiB
4Elfogadva0/01ms316 KiB
5Hibás válasz0/0361ms440 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/24ms364 KiB
10Hibás válasz0/2368ms316 KiB
11Időlimit túllépés0/2598ms780 KiB
12Időlimit túllépés0/1600ms672 KiB
13Hibás válasz0/14ms512 KiB
14Hibás válasz0/1370ms448 KiB
15Időlimit túllépés0/1600ms564 KiB
16Időlimit túllépés0/1582ms564 KiB
17Időlimit túllépés0/1600ms496 KiB
18Elfogadva1/19ms564 KiB
19Időlimit túllépés0/1579ms580 KiB
20Időlimit túllépés0/1583ms564 KiB
21Időlimit túllépés0/1586ms564 KiB
22Időlimit túllépés0/1600ms764 KiB
23Időlimit túllépés0/1588ms540 KiB
24Időlimit túllépés0/1583ms796 KiB
25Hibás válasz0/21ms316 KiB
26Hibás válasz0/2370ms448 KiB
27Időlimit túllépés0/2600ms500 KiB
28Időlimit túllépés0/1587ms756 KiB
29Időlimit túllépés0/2587ms564 KiB
30Időlimit túllépés0/1600ms712 KiB
31Időlimit túllépés0/1579ms564 KiB
32Hibás válasz0/24ms316 KiB
33Időlimit túllépés0/2579ms764 KiB
34Időlimit túllépés0/1583ms704 KiB
35Időlimit túllépés0/2600ms708 KiB
36Időlimit túllépés0/2578ms564 KiB
37Időlimit túllépés0/2583ms564 KiB
38Időlimit túllépés0/2587ms564 KiB
39Hibás válasz0/11ms316 KiB