Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zadanie wężyk.

Ostatnio zmodyfikowano 2012-11-03 11:59
Autor Wiadomość
pawelex
Temat założony przez niniejszego użytkownika
Zadanie wężyk.
» 2012-11-02 16:01:28
http://main.edu.pl/pl/archive/ilocamp/2010/wez
Dwie pierwsze linijki wypisywania są dobrze ale mam problem z następnymi.
Kod:
C/C++
#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    for( int q = 0; q < n / 2; q++ )
    {
        int l = 1;
       
        for( int i = 0; i < n; i++ )
        {
           
            cout << l << " ";
            l++;
        }
        cout << endl;
        l = 2 * n;
        for( int j = 0; j < n; j++ )
        {
           
            cout << l << " ";
            l--;
        }
        cout << endl;
    }
    return 0;
}

P-68217
Admixior
» 2012-11-02 16:33:56
Z tego co widzę to ogólne założenie algorytmu jest złe. Powinieneś spojrzeć na dane i je zrozumieć. Jeśli to zrobiłeś to napisz 2 funkcje które mają 2 parametry: skąd i ile. Co one będą robić możesz się domyślić po tym ile ich jest(dwie) i po parametrach. Wtedy wystarczy wysyłać odpowiednie parametry, i łatwiej będzie wytropić błędy.
PS. ta pętla będzie chyba wypisywać złą liczbę linijek dla liczb nieparzystych
PS2. utwórz sobie odpowiednie zmienne pomocnicze (np. przed pętlą) bo jak zauważyłeś za każdym razem to samo wypisuje
P-68227
withelm
» 2012-11-02 18:34:13
hint: zamiast endl używaj '\n', bo akurat już przy taki zadaniu jest wysoka szansa, że dostaniesz TLE.
P-68246
ison
» 2012-11-02 19:53:37
Prędzej chodzi o cin/cout a nie o endl. Aczkolwiek tu akurat nie ma to wielkiego znaczenia, 10^4 liczb to mało, od 10^6 liczb na wejściu/wyjściu różnica zaczyna być znacząca.

Łatwiej Ci chyba będzie przelecieć forem po n elementach zamiast n/2 i sprawdzać parzystość
C/C++
#include <cstdio>

int main()
{
    int n;
    scanf( "%d", & n );
    for( int i = 0; i < n; ++i ) {
        if( n % 2 ) {
            //nieparzysta
        }
        else {
            //parzysta
        }
    }
}
P-68271
withelm
» 2012-11-02 22:30:35
ison: cout i cin to swoja droga, ale endl nie tylko daje znak '\n' to jeszcze czysci buffor, a to jest bardzo nie fajne przy zadankach typu OI
P-68302
pawelex
Temat założony przez niniejszego użytkownika
» 2012-11-03 11:59:03
A można prosić o pseudokod?
P-68317
« 1 »
  Strona 1 z 1