-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!.POSTED!not-for-mail
From: Wielebny <w...@w...pl.invalid>
Newsgroups: pl.comp.programming
Subject: Re: liczby do zakresów
Date: Wed, 30 Oct 2013 08:10:21 +0100
Organization: ATMAN - ATM S.A.
Lines: 36
Message-ID: <l4qbcu$veg$1@node1.news.atman.pl>
References: <9...@g...com>
NNTP-Posting-Host: 91-240-238-214.actus-info.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1383117022 32208 91.240.238.214 (30 Oct 2013 07:10:22
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 30 Oct 2013 07:10:22 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0
In-Reply-To: <9...@g...com>
Xref: news-archive.icm.edu.pl pl.comp.programming:204639
[ ukryj 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-23 Riga => Specjalista ds. public relations <=
- 2024-12-23 Łódź => Specjalista ds. Sprzedaży <=
- 2024-12-23 Kraków => International Freight Forwarder <=
- 2024-12-23 Co nalezy do Cinkciarza, a co do Conotoxia ?
- 2024-12-23 Poznań => Key Account Manager <=
- 2024-12-23 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=
- 2024-12-23 Rzeszów => Spedytor Międzynarodowy <=
- 2024-12-23 Warszawa => Infrastructure Automation Engineer <=
- 2024-12-23 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-23 Warszawa => Site Reliability Engineer (SRE) <=
- 2024-12-23 Warszawa => DevOps Engineer <=
- 2024-12-23 Warszawa => Senior Account Manager <=
- 2024-12-23 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-23 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2024-12-23 Mińsk Mazowiecki => Spedytor Międzynarodowy <=