🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

9 total messages Started by Michal Szostakiewicz Sat, 03 Jan 1998 15:09
V Olimpiada Informatyczna
#523
Author: Michal Szostakiewicz
Date: Sat, 03 Jan 1998 15:09
43 lines
2307 bytes
    Czesc,
Co prawda V Olimpiada Informatyczna nie jest za bardzo zwiazana z C, ale nie
ma grupy zwiazanej z algorytmika, a C to moj ulubiony jezyk :)))).
Chodzi mi o wymiane doswiadczen. Interesuja mnie rozwiazania do zadan
WIELAKAT i AB-SLOWA. Pozostale zrobilem sam, gdyby kogos to interesowalo
moge podac opis algorytmu.
Poza tym mam pytanie juz bardziej zwiazane z C. Napisalem prosty programik,
bo musialem przetworzyc jeden plik.
Wygladalo to mniej wiecej tak:
main()
    {
    char tab[6400];
    int i,plik;

    plik=open("PLIK.BIN",O_BINARY);
    read(plik,tab,6400);
    close(plik);
    for(i=0;i<6400;i++)
        if(tab[i])
            tab[i]=8;
    plik=open("PLIK1.BIN",O_CREAT);
    write(plik,tab,6400);
    close(plik);
    }

I po uruchomieniu nie chacial dzialac. Dokladniej: plik otwieral sie, ale
program zle zapisywal dane (pocztek byl OK, ale potem byly smiecie). Co
wiecej gdy probowalem do deklaracji tablicy dodac far albo near to
kompilator (BC 2.0 pod dosa) wypisywal blad: Conficting type modifers. Ale
gdy tylko tablice ustawilem jako globalna wszystko dzialalo bez zarzutu.
Troche mnie to zdziwilo (zawsze myslalem, ze to zmienne lokalne sa
bezpieczniejsze). Po pewnym czasie zorientowalem sie o co chodzi. W
oryginalnej wersji programu (tablica lokalna) kompilator umieszcal dane pod
sam koniec segmentu (gdzies tak 0xF700 offset). Dlatego koniec tablicy to po
prostu "zwiniety" poczatek segmentu. Dlaczego tak sie stalo (jak mozna to
naprawic - nie moge uzyc huge'a) ?
    Pozdrawiam,
Michal Szostakiewicz
buttman@boss.staszic.waw.pl albo gerwek@polbox.com
ICQ - 2482112
"Hiroszima '45
Czarnobyl '86
Windows '95" (madrosc ludowa)
Re: V Olimpiada Informatyczna
#524
Author: Jarek Kucypera
Date: Sat, 03 Jan 1998 16:32
21 lines
1627 bytes

Michal Szostakiewicz <buttman@boss.staszic.waw.pl> napisał(a) w artykule <68lk9n$2hp@h1.uw.edu.pl>...
> Poza tym mam pytanie juz bardziej zwiazane z C. Napisalem prosty programik,
> bo musialem przetworzyc jeden plik.
> Wygladalo to mniej wiecej tak:
> main()
>     {
>     char tab[6400];
   (...)

Problem wynika chyba z tego, że 
 - zmienne lokalne są alokowane no stosie w momencie wchodzenia do funkcji,
 - standardowy stos ma niewielki maksymalny  rozmiar (chyba <5kb),
 - Twoje zmienne lokalne są duże.

Rozmiar stosu można zmienić deklarując zmienną  _globalną_    _stklen, np:
extern unsigned _stklen = 7000; // ustal maks. rozmiar stosu na 7 tys. bajtów

Przy okazji pogrzeb gdzieś w opcjach kompilatora czy linkera dotyczących stosu,
żeby mieć pełną nad tym kontrolę.
Re: V Olimpiada Informatyczna
#526
Author: Jaroslaw Lis
Date: Mon, 05 Jan 1998 18:27
31 lines
1625 bytes
Michal Szostakiewicz <buttman@boss.staszic.waw.pl> wrote:
: main()
:     {
:     char tab[6400];
:     int i,plik;

: I po uruchomieniu nie chacial dzialac. Dokladniej: plik otwieral sie, ale
: program zle zapisywal dane (pocztek byl OK, ale potem byly smiecie). Co
: wiecej gdy probowalem do deklaracji tablicy dodac far albo near to
: kompilator (BC 2.0 pod dosa) wypisywal blad: Conficting type modifers. Ale
: gdy tylko tablice ustawilem jako globalna wszystko dzialalo bez zarzutu.

Masz ten sam problem co kolega od rekurencji - standardowo Borland 
zadaje 4KB stosu. I tablica 6400B sie tam nie miesci.
far,huge,near - tez nic nie da, bo z pustego i Salomon nie naleje.

J.

P.S. 4KB jest w modelach z "duza pamiecia" danych [large, huge, ...]
    Modele z "mala" pamiecia danych maja .... wiecej :-)

PPS. W zasadzie dziwne ze far/near nie chcial Ci przyjac. 
     Powinien, tylko ... nawet Salomon....


PPPS. ustawia sie wstawiac gdzies w program  deklaracje

unsigned _stklen=15000 ;


J.
Re: V Olimpiada Informatyczna
#525
Author: Gracjan Ziółek
Date: Mon, 05 Jan 1998 21:35
14 lines
877 bytes
Michal Szostakiewicz wrote:
> 
>     Czesc,
> Co prawda V Olimpiada Informatyczna nie jest za bardzo zwiazana z C, ale nie
> ma grupy zwiazanej z algorytmika [...]

pl.comp.programming?


	pozdrawiam :)

-- 
gracjan ziółek
system administrator
Re: V Olimpiada Informatyczna
#527
Author: Marek Futrega
Date: Tue, 06 Jan 1998 13:06
20 lines
1258 bytes
On Sat, 3 Jan 1998, Michal Szostakiewicz wrote:

>     Czesc,

> Chodzi mi o wymiane doswiadczen. Interesuja mnie rozwiazania do zadan
> WIELAKAT i AB-SLOWA. Pozostale zrobilem sam, gdyby kogos to interesowalo
> moge podac opis algorytmu.

Zadanie wielokat - sprobuj zbudowac trzewo z trojkatow. Pozniej
problem sprowadza sie do znalezienia maksymalnej odleglosci miedzy
trzema wierzcholkami [niewatpliwie lisciami].
Zadanie AB-Slowa - problem jest NP-zupelny, zatem jedyne co mozesz
szukac to roznego rodzaju heurystyki.

Tyle,

Marek Futrega - MAF 
---
marek.futrega@students.mimuw.edu.pl
http://polbox.com/f/futer
Re: V Olimpiada Informatyczna
#528
Author: Michal Kaczmarczyk
Date: Tue, 20 Jan 1998 14:39
10 lines
1204 bytes
On Tue, 6 Jan 1998, Marek Futrega wrote:

> Zadanie AB-Slowa - problem jest NP-zupelny, zatem jedyne co mozesz
> szukac to roznego rodzaju heurystyki.

Czy aby na pewno? Mi się wydaje że znalazłem jakis algorytm wielomianowy,
ale nie zdażyłem go zaimplementować na czas, więc go zarzuciłem :-(

_______________________________________________________________________________
Michał Kaczmarczyk  mailto:mik@iname.com http://student.uci.agh.edu.pl/~kaczmar
Re: V Olimpiada Informatyczna
#529
Author: Marek Futrega
Date: Tue, 20 Jan 1998 16:03
23 lines
1487 bytes
On Tue, 20 Jan 1998, Michal Kaczmarczyk wrote:

> On Tue, 6 Jan 1998, Marek Futrega wrote:
> 
> > Zadanie AB-Slowa - problem jest NP-zupelny, zatem jedyne co mozesz
> > szukac to roznego rodzaju heurystyki.
> 
> Czy aby na pewno? Mi się wydaje że znalazłem jakis algorytm wielomianowy,
                       ^^^^^^^^^^      
> ale nie zdażyłem go zaimplementować na czas, więc go zarzuciłem :-(

Tylko Ci sie wydaje.
Znajdywanie niezaleznego zbioru wierzcholkow w grafie jest NP-zupelne.
[a do tego sprowadza sie przeciez zadanie]
Wiecej na temat tego zadania -> adam.borowski@zodiac2.mimuwu.edu.pl :)

pozdrawiam,


Marek Futrega - MAF
___
marek.futrega@students.mimuw.edu.pl
http://polbox.com/f/futer
Re: V Olimpiada Informatyczna
#530
Author: Michal Kaczmarczyk
Date: Wed, 21 Jan 1998 13:12
17 lines
1447 bytes
On Tue, 20 Jan 1998, Marek Futrega wrote:

> > On Tue, 6 Jan 1998, Marek Futrega wrote:
> > 
> > > Zadanie AB-Slowa - problem jest NP-zupelny, zatem jedyne co mozesz
> > > szukac to roznego rodzaju heurystyki.

[...]

> Znajdywanie niezaleznego zbioru wierzcholkow w grafie jest NP-zupelne.
> [a do tego sprowadza sie przeciez zadanie]
> Wiecej na temat tego zadania -> adam.borowski@zodiac2.mimuwu.edu.pl :)

A nie ma na jakims www?

_______________________________________________________________________________
Michał Kaczmarczyk  mailto:mik@iname.com http://student.uci.agh.edu.pl/~kaczmar
Re: V Olimpiada Informatyczna
#531
Author: Marek Futrega
Date: Thu, 22 Jan 1998 11:34
16 lines
1311 bytes
On Wed, 21 Jan 1998, Michal Kaczmarczyk wrote:

> > Znajdywanie niezaleznego zbioru wierzcholkow w grafie jest NP-zupelne.
> > [a do tego sprowadza sie przeciez zadanie]
> > Wiecej na temat tego zadania -> adam.borowski@zodiac2.mimuwu.edu.pl :)
> 
> A nie ma na jakims www?

Zadanie jest, ale rozwiazania nie ma.
[ http://www.mimuw.edu.pl/OI ]


Marek Futrega - MAF
___
marek.futrega@students.mimuw.edu.pl
http://polbox.com/f/futer
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads