Ostatnie posty

Potwierdzam (czy TAK czy NIE) to, co pojawiło się w tym wątku (zgodnie z korektami kolegów) i dziękuję za testy.
Albo chociaż jak było poprzednio szukajka pozycji.
Tak, działa poniżej 1/3 limitów.
Też myślałem o wrzuceniu tego w macierz i schodkowaniu, ale uznałem, że będzie to za wolne. Jeśli mam "zeschodkowaną" macierz zredukowanie nowego wektora trwać może nawet O(n^2). Sprowadzenie rozwiązanej części do macierzy jednostkowej też nie pomaga, bo pozostała cześć nadal może być wypełniona:
1 0 0 0 1 0 1 0 1 0 1 0 1
0 1 0 0 0 1 0 0 1 1 0 0 1
0 0 1 0 0 0 1 1 0 0 1 1 0
0 0 0 1 0 0 1 0 0 1 0 1 0
Dostajemy kolejny wektor, tzn belkę postaci 011111000000. Wiemy, że (w tym wypadku) należy odjąć od niego wektor bazowy 2,3,i 4, średnio O(k) k wektorów w bazie. Co może oznaczać nawet O((n-k)k) operacji na elementach macierzy.

W wersji którą napisałem baza utrzymywana jest zawsze w takiej samej postaci jak wektory, które dostajemy, czyli jedynki tworzą spójny obszar i opisujemy je tylko dwoma liczbami.
Schodkowa postać macierzy wygląda w ten sposób, że mam tablicę konce[i], której elementy, jeśli nie zerowe, mówią, że w bazie mam wektor wypełniony jedynkami od i do konce[i] włącznie (schodkowa postać oznacza m.in , że w jednym 'i' zaczyna się tylko jeden wektor).
Redukcja nowego wektora do postaci schodkowej zajmuje tu pesymistycznie O(n), czyli znacznie lepiej niż w wersji macierzowej. Jeśli wszystkie elementy bazy są postaci i--i to redukcja nowej belki o długości k (średnio n) rzeczywiście trwa k ruchów. Jednak średnio jest lepiej, bo jednym jednym ruchem zmniejszamy nową belkę o więcej niż jedno oczko.
Heurystyka stara się tak modyfikować bazę, aby elementy bazy wyglądały tak: i--((i+n)/2), tym samym dowolna redukcja zajmowała O(log n). Wyniki czasowe sugerują, że dla losowych danych taki efekt i złożoność uzyskujemy też bez niej.
Również potwierdzam :|
Przydała by się informacja (mail, jakieś pole na stronie) informujące o aktualnej pozycji w rankingu.
Potwierdzam wszystkie powyższe, poza trzydziestoma siedmioma testami z paczki Grzegorza.
Cóż, potwierdzam wszystkie testy, mam w tym momencie 4.98s na sprawdzaczce.
Potwierdzam wszystkie 3 testy @Wojtek Nadara :)
@Bartłomiej Szczygieł I działało Ci to? Bo też zrobiłem podobnie, że bralem eliminacją Gaussa n najtańszych liniowo niezależnych wektorów, ale nie przechodziło większych testów:/ A wybieranie najtańszej bazy w Z_2 klepałem na studiach na sprawdzarkę więc jest duże prawdopodobieństwo, że nie mam błędu w algorytmie..
> https://dl.dropboxusercontent.com/u/11045076/testss.rar
Potwierdzam z różnicami jak u kolegów.
Wszystkie pozostałe testy też potwierdzam.

Maksymalny czas ~0,1s, ~0,13s na oitimetoolu.
@Tomasz Nocek
Potwierdzam - 37 różnic
Na tych testach mój program zwraca inną odpowiedź (TAK zamiast NIE):

1114
1160
1223
1338
139
1405
1516
1556
2221
267
2761
2827
2882
306
3086
3110
3116
3131
32
3407
3519
35
3650
3701
3818
4183
4237
425
4267
4315
4399
4421
4527
470
4897
522
703

Cześć, wrzucam moje testy - paczka 5000 losowych, małych (n=10) przypadków - powinny pokrywać wszystkie proste heury.
W plikach Out są tylko odpowiedzi TAK/NIE dla danego testu.
Potwierdzacie czy mam heurę?
https://dl.dropboxusercontent.com/u/11045076/testss.rar
Potwierdzam.
Ja też potwierdzam