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

illegal syscall

Ostatnio zmodyfikowano 2017-10-15 16:07
Autor Wiadomość
mateczek
» 2017-10-11 05:25:34
jaka sprawdzarka ?? SPOJ?? czy coś innego?? A Czasy i pamięć zależą od algorytmu i danych wejściowych.
Time-2s | Memory - 2Mb
 Bez danych wejściowych informacja z serii bezużytecznych ??  To tak jakbyś powiedział muszę się dostać w 2 godziny (pytanie czy z warszawy do nowego jorku?? czy z pokoju do kuchni??)

A na sprawdzarce ze Spoja można sobie wybrać w czym kompilujesz i w jakiej wersji i nigdy nie było problemu c C++11.


"także musi być na to jakis inny sposob"
 pewnie cała masa sposobów. Np sposób z wykorzystaniem zwykłej tablicy
C/C++
#include <iostream>
using namespace std;
int main() {
    int tablica[ 100 ] { 0 };
    int n;
    cin >> n;
    while( n-- ) {
        int liczba;
        cin >> liczba;
        tablica[ liczba ] ++;
    }
    for( int i = 0; i < 100; i++ ) {
        if( tablica[ i ] % 2 ) cout << i << endl;
       
    }
}

A wersja bez auto, dwa posty wyżej, kompiluje się bez problemu w gcc 4.3 bez c++11
P-165638
milmega
Temat założony przez niniejszego użytkownika
» 2017-10-11 18:21:48
Wejście:
W pierwszej linii dana jest jedna liczba całkowita n (1 ≤ n ≤ 106). W następnej linii znajduje się n liczb. Wiadomo, że liczby są z przedziału [-1000, 1000].
P-165653
YooSy
» 2017-10-11 18:26:18
Możesz dać link do zadania, zamiast bawić się w wydzielanie informacji o nim?
Wtedy zainteresowani będą mogli sami zobaczyć w czy rzecz.
P-165654
milmega
Temat założony przez niniejszego użytkownika
» 2017-10-14 15:13:24
Wypisałem tylko najważniejsze informacje, ale jeśli to nie wystarcza to treść zadania brzmi:

Jaś przygotował tym razem swoją własną talię kart! Na każdej z n kart napisał liczbę całkowitą o wartości bezwzględnej nie większej niż 1000. Teraz postanowił zagrać z Małgosią w Piotrusia. Ponieważ talia Jaisa nie jest standardowa, zastanawia się ile kart występuje nieparzyście wiele razy w jego talii. Pomóż mu znaleźć wszystkie takie karty.

Wejście
W pierwszej linii dana jest jedna liczba całkowita n (1 ≤ n ≤ 106) określająca liczbę kart w kolekcji Jasia. W następnej linii znajduje się n liczb - są to liczby z przygotowanych przez chłopca kart, wiadomo, że liczba ai na i-tej karcie jest z przedziału [-1000, 1000].

Wyjście
Należy wypisać wszystkie wartości kart, które występują nieparzyście wiele razy w talii Jasia w kolejności rosnącej.
Przykład

Dla danych wejściowych
5
13 2 2 3 3
poprawną odpowiedzią jest
13
P-165735
mateczek
» 2017-10-14 15:39:53
wersja z tablicą
C/C++
#include <iostream>
using namespace std;
int main() {
    const int size = 2001;
    int tablica[ size ] { 0 };
    int n;
    cin >> n;
    while( n-- ) {
        int liczba;
        cin >> liczba;
        tablica[ liczba + 1000 ] ++;
    }
    for( int i = 0; i < size; i++ ) {
        if( tablica[ i ] % 2 ) cout << i - 1000 << endl;
       
    }
}



wersja z kontenerem.
C/C++
#include <iostream>
#include<map>
using namespace std;
int main() {
    map < int, int > kontener;
    int n;
    cin >> n;
    while( n-- ) {
        int liczba;
        cin >> liczba;
        kontener[ liczba ] ++;
    }
    for( map < int, int >::iterator it = kontener.begin(); it != kontener.end(); it++ ) {
        if( it->second % 2 ) cout << it->first << endl;
       
    }
}
Tak ciężko jest wkleić linka do zadania?? myślę że w tym przypadku po więcej informacji to musisz się skontaktować z http://lmgtfy.com/​?q=wr%C3%B3%C5%BCbita+maciej
P-165737
milmega
Temat założony przez niniejszego użytkownika
» 2017-10-15 14:29:40
Dzięki bardzo! Jeszcze jedno pytanie. W innej wersji zadania różniącej się minimalnie wejsciem:

Wejscie:
W pierwszej linii dana jest jedna liczba całkowita n (1 ≤ n ≤ 1000000) określająca liczbę kart w kolekcji Jasia. W następnej linii znajduje się n liczb - są to liczby z przygotowanych przez chłopca kart, wiadomo, że liczba ai na i-tej karcie jest z przedziału [-1000000000, 1000000000]. Dodatkowo wiadomo, że liczba różnych wartości na kartach jest nie większa niż 2000.

Wystarczy w powyższym programie z tablicą zmienić
const int size = 2000000001;
 i
tablica[ liczba + 1000000000 ] ++;
 oraz
cout << i - 1000000000 << endl;
 ? Czy jednak moje rozumowanie jest błędne?
P-165767
mateczek
» 2017-10-15 14:49:45
idea polega na tym by w komórce tablicy o indeksie [liczba] trzymać ilość jej wystąpień. Będę się upierał, że wersja z kontenerem " std::map" jest lepsza i bardziej czytelna.

A Czy wystarczy?? Bez linka do zadanie Nikt Ci nie powie !!! Bo może być przekroczenie pamięci lub czasu lub inny błąd. Pamięć na duże tablice lepiej alokować dynamicznie Wszystko gdybanie.
Ps. Zauważ, że przy tak wielkiej tablicy pamięć poleci w GB więc tylko kontener 
P-165768
milmega
Temat założony przez niniejszego użytkownika
» 2017-10-15 16:07:12
Już wszystko ładnie działa, dzięki!
P-165772
1 « 2 »
Poprzednia strona Strona 2 z 2