Oryginalna strona colobot.cba.pl umarła, gdy cba.pl przestało oferować darmowy hosting. To jest statyczny mirror, pobrany w 2018. ~krzys_h
|
Forum - Polski Portal COLOBOTa |
|
|
Kopiec |
Autor |
Wiadomość |
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 24-05-2010, 23:21 Kopiec
|
|
|
Ostatnio bawie sie dziwnymi algorytmami, i zrobilem algorytm do kopca w postaci drzewa binarnego, ktory daje dziwny wynik.
Dla danych wejsciowych:
Powinien dawac:
A daje:
Niby kopiec jest poprawny, ale sie zastanawiam, czy dla jakichs podchwytliwych danych wejsciowych nie wywali czegos glupiego.
Dane wejsciowe to liczba oznaczajaca liczbe liczb wejsciowych (...), a pozniej sa liczby do ulozenia w kopiec.
Kod wyglada tak:
Kod: |
#include <iostream>
using namespace std;
int size;
int* heap;
void getHeap()
{
int arr;
int n;
int i;
for(i = 1; i < size; i++)
{
n = i;
while(n > 0 && heap[n] > heap[n/2])
{
arr = heap[n];
heap[n] = heap[n/2];
heap[n/2] = arr;
n /= 2;
}
}
}
void coutHeap()
{
for(int i = 0; i < size; i++)
{
if(i > 0) cout << " ";
cout << heap[i];
}
}
int main(int argc, char *argv[])
{
cin >> size;
heap = new int[size];
int i;
for(i = 0; i < size; i++)
{
cin >> heap[i];
}
getHeap();
coutHeap();
return 0;
}
|
Poprzednio nikt nie zajrzal, ciekawe czy ktos teraz zauwazy ten temat ^^ |
|
|
|
|
Bartek c++
Twoja ulubiona misja: Tropica - Czas na atak
Pomógł: 6 razy Wiek: 20 Dołączył: 07 Lip 2009 Posty: 390
|
Wysłany: 25-05-2010, 06:33
|
|
|
Ja myśle że sknociła to ta dwunastka. |
_________________
|
|
|
|
|
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 25-05-2010, 15:44
|
|
|
Ja mam takie dziwne wrazenie, ze wina lezy po stronie kodu a nie danych wejsciowych. Co wy myslicie? |
_________________
|
|
|
|
|
adiblol
Administrator forum FLOSS FTW!
Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy Dołączył: 21 Kwi 2008 Posty: 1313 Skąd: pokój odsłuchowy
|
|
|
|
|
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 25-05-2010, 16:30
|
|
|
Cytat: | A nie testowałeś na "znanym i poważanym" programie? |
Testowalem na windzie, nie chce mi sie sciagac i instalowac linuxa by sprawdzic czy na nim 2 glupie liczby ustawiaja sie inaczej |
_________________
|
|
|
|
|
adiblol
Administrator forum FLOSS FTW!
Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy Dołączył: 21 Kwi 2008 Posty: 1313 Skąd: pokój odsłuchowy
|
Wysłany: 25-05-2010, 16:48
|
|
|
Przecież sam pisałeś ten program, to dlaczego nie sprawdzisz na już istniejącym? |
_________________ 1Tbps Project && Telecomix Network
|
|
|
|
|
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 25-05-2010, 17:06
|
|
|
Ehh, proste - nie mam do niego dostepu.
Jak robi sie np na maturze zadanie z matematyki to dostepu do klucza sie nie ma
Czy kopiec ma jeszcze jakies specjalne warunki? Bo jesli chodzi o to, ze kazdy potomek ma miec wartosc mniejsza rowna od wezla z ktorego pochodzi to spelnilem, a czy jest cos w stylu "lewy potomek jest wiekszy rowny prawemu potomkowi jesli pochodza od jednego wezla"? |
|
|
|
|
adiblol
Administrator forum FLOSS FTW!
Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy Dołączył: 21 Kwi 2008 Posty: 1313 Skąd: pokój odsłuchowy
|
Wysłany: 25-05-2010, 17:37
|
|
|
Czy w całym Internecie nie ma innych programów realizujących algorytm kopca? |
_________________ 1Tbps Project && Telecomix Network
|
|
|
|
|
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 25-05-2010, 17:46
|
|
|
Sa, m.in moj. Tylko, ze jak znalazlem jakis inny, to najczesciej byl napisany tak zagmatwanie (jak do zapamietywania indexow elementow tablicy mozna uzywac ponad 4 zmiennych pomocniczych? 0.o), ze nie bardzo dalo sie porownac. Z drugiej strony, tu jest cale forum nieaktywnych informatykow, ktorzy tylko narzekaja na systemy operacyjne i spamuja w offtopie - zawsze warto sprobowac przeniesc aktywnosc na inne dzialy |
_________________
|
|
|
|
|
adiblol
Administrator forum FLOSS FTW!
Twoja ulubiona misja: porównywanie formatów audio
Pomógł: 18 razy Dołączył: 21 Kwi 2008 Posty: 1313 Skąd: pokój odsłuchowy
|
|
|
|
|
Bartek c++
Twoja ulubiona misja: Tropica - Czas na atak
Pomógł: 6 razy Wiek: 20 Dołączył: 07 Lip 2009 Posty: 390
|
Wysłany: 25-05-2010, 21:15
|
|
|
Na Windowsie własne obliczenia są pogmatwane(niestabilny czasami), lepiej obliczać na UNIX lub Linux. |
_________________
|
|
|
|
|
Berserker
Dark Ness
Twoja ulubiona misja: Ofrenia
Pomógł: 16 razy Wiek: 24 Dołączył: 24 Mar 2009 Posty: 496 Skąd: Bigos
|
Wysłany: 25-05-2010, 21:45
|
|
|
Jakis algorytm z zaimplementowana funkcja wyswietlania tego w kopcu (wow), tylko troche nie dziala dla innej liczby elementow niz 31.
Wnioskuje z tej pseudopiramidki, ze wynik to Dziwnie poprawny |
_________________
|
|
|
|
|
|
|
| |
|
|
|
|
Polski Portal COLOBOTa © 2008 - 2012 |
|
|