-
Data: 2013-10-30 08:10:21
Temat: Re: liczby do zakresów
Od: Wielebny <w...@w...pl.invalid> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 28.10.2013 16:51, d...@g...com pisze:
> Cześć
> Czy istnieje jakiś sprawny algorytm, który pozwoliłby zastąpić taki lub podobny
ciąg liczb:
> 1,2,3,4,6,7,8,14,15,16,190,191,192,300 w takie coś:
> 1-4,6-8,14-16,190-192,300
>
> ??
>
Można by to bardziej zoptymalizować np. poprzez wywoływanie
string.format dopiero gdy jest potrzebne a nie w każdym kroku
iterowanego ciągu, ale ogólnie masz tu algorytm który robi to w jednym
przebiegu:
Do zweryfikowania na: http://repl.it/languages/Lua
local a={1,2,3,4,6,7,8,14,15,16,190,191,192,300}
local ret={}
local startval,lastval
for i=1,#a do
if startval and lastval and lastval==a[i]-1 then
ret[#ret]=string.format("%d-%d", startval, a[i])
else
table.insert(ret, a[i])
startval=a[i]
end
lastval=a[i]
end
-- pokazywanie wyniku
print(table.concat(ret,","))
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-25 Kraków => Programista Full Stack .Net <=
- 2024-12-25 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-25 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-25 Białystok => Delphi Programmer <=
- 2024-12-25 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2024-12-25 Kraków => Ekspert IT (obszar systemów sieciowych) <=
- 2024-12-25 Mińsk Mazowiecki => Spedytor Międzynarodowy <=
- 2024-12-24 Dzisiaj Bentlejem czyli przybieżeli sześciu Króli do Rysia na kasie
- 2024-12-23 Przedłużacz USB-C działa w połowie
- 2024-12-24 Cicha noc...
- 2024-12-24 Gdańsk => Software .Net Developer <=
- 2024-12-23 Opole => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i Ka
- 2024-12-23 Łódź => Architekt rozwiązań (doświadczenie w obszarze Java, AWS)
- 2024-12-23 Kraków => System Architect (Java background) <=
- 2024-12-23 Poseł Ryszard Petru w Biedronce