1 / 7
Sep 2017

Zadanie: http://pl.spoj.com/problems/PTROL/10

Mam problem z tym zadaniem napisałem program według mnie działa poprawnie ale po sprawdzeni przez sędzie wyskakuje mi błąd “Błędna odpowiedź” i nie mam pojęcia dlaczego. Na dole mój kod.

#include

using namespace std;

int t;
int n;
int tablica[NULL];
int tablica2[NULL];

int main()
{

cin>>t;

for(int i=1; i<=t; i++)
{
    cin>>n;

    for(int j=0; j<n; j++)
    {
        cin>>tablica[j];
    }
    for (int i = 0; i < n; ++i)
    {
        tablica2[i-1] = tablica[i];
        if(i == 0)
        {
            tablica2[n-1] = tablica[i];
        }
    }
    for (int l=0; l<n ; l++)
    {
        cout<<tablica2[l]<<" ";
    }
    cout<<endl;

}

return 0;

}

  • created

    Sep '17
  • last reply

    Sep '17
  • 6

    replies

  • 908

    views

  • 2

    users

  • 4

    links

Opowiesz o tym fragmencie? Nie twierdzę, że to przez niego (źle sformatowałeś kod więc nie testowałem wnikliwie), ale jest… ciekawy.

W zamyśle miało być tak.
dla i=0 warunek spełniony i wartości tablica[0] zapisywana jest w ostatniej “szufladce” tablicy 2
w kolejnych iteracjach warunek nie jest spełniony to wartości z tablicy 1 przepisywane są do tablicy 2 o zmniejszonym indeksie.
Wiem że to nie zbyt fachowe rozwiązanie ale dopiero cię uczę :slight_smile:

A tak?

tablica[n-1] = tablica[0]
for (int i = 1; i < n; ++i)
{
    tablica2[i-1] = tablica[i];
}

Nadal popraw kodowanie. Skorzystaj z ideone.com13 lub zrób dodatkowy enter przed kodem i zaznacz, a później znaczek “</>”.

Już wiem gdzie miałem błąd. Dzięki za pomoc i podesłanie tej strony bez tego to pewnie nadal bym się z tym męczył.