Hirdetés
- Nothing Phone (3a) Lite – mennyit ér a név?
- Tényleg nem változik semmit a Samsung Galaxy S26+?
- Milyen hagyományos (nem okos-) telefont vegyek?
- Google Pixel Buds 2a és Pixel Buds Pro 2 összehasonlító gyorsteszt
- EarFun Air Pro 4+ – érdemi plusz
- Samsung Galaxy S23 Ultra - non plus ultra
- Redmi Note 12 Pro - nem tolták túl
- Akciófigyelő: Ilyen kedvezmények járnak a Poco F8 sorozatra
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Google Pixel topik
-
Mobilarena

Új hozzászólás Aktív témák
-
[LOLDMA]
csendes tag
aludtam rá egyet, és rájöttem. Az én megoldásom nem darabolja az utazás intervallumot, hanem az elejéből mindig befele húz. Szóval a munkáknak kell egy order by a munka kezdete, és akkor aszt mondod hogy szelektálni tudod azokat a munkákat amik az adott utazáshoz tartoznak.
a, UTAZÁS magába foglalja a MUNKÁT,
b, MUNKA magába foglalja az UTAZÁST,
c, MUNKA előbb kezdődik, mint az UTAZÁS és az UTAZÁS alatt ér véget,
d, MUNKA az UTAZÁS alatt kezdődik és utána ér végetb, eset ekvivalens, a tiszta utazási idő 0.
a többi eset nem ily egyszerű. Kell két változó, ami az aktuális utazás intervallumra mutat (amit éppen vizsgálunk). Kell még egy változó, amibe belerakjuk még az elején az egész utazás időtartalmát (legyen t változó, t legyen egyenlő utazas vege-utazas eleje). Egyből az elején meg kell adni az éppen aktuális utazás intervallum elejét (e legyen egyenlő utazas eleje) valamint végét (v legyen egyenlo utazas vege)Namármost, szépen sorban végigmegyünk a munkákon.
az a, esetben a t változóból kivonjuk a munka vege-munka eleje-t, azaz a munka időtartalmát, valamint az e változót átállítjuk a munka végére.
c, esetben ugye a munka előbb kezdődik, mint az aktuális utazás intervallum (de később mint az előző munka) szóval ott csak annyit kell kivonni, amennyivel belelóg a még tiszta utazási időbe. Magyarán kivonjuk t változóból a munka vege-e -t. Ezutan e-t átállítjuk a munka vege-re.
d, esetben, mivel ugye sorrendben vannak a munkák, ez lesz az utolsó, itt a munka elejétől az utazás végéig levő intervallumot kell már csak kivonni, szóval t változóból kivonjuk a v-munka eleje. És voálá. ami marad a t-ben, az a tiszta utazási idő. Na most rohanok suliba, ígyis elkések. -
orbano
félisten
lehet hogy most késő van és hülyeséget írok, de szerintem az alábbi működne:
1. lépésben vágnék: minden munkát feldarabolnék az utazások határainál, hogy csak olyan munkadarabjaim legyenek, amik egy adott utazásba beleestek.
2. készítenék egy halmazt, amibe a tól-ig dátumokat beleteszem (megcímkézve nyilván, hogy tudjam mihez t artoznak, ráadásul tíusosan, azaz megkülönböztethetően a tól és az ig határokat)
3. készítenék egy vermet (inkább egy sima halmaz talán jobb), vagy mittomén valami spéci adatszerkezetet, amibe pakolászom a tól dátumokat azaz a munkák kezdetét.
4. elkezdem az algoritmust:
-végigmegyek a tól-ig dátumokon növekvő sorrendben, a műveleti szabályok:
a) Első lépésben a halmaz üres, a kezdődátum az utazás kezdete
b) Ha a halmaz üres, létrehozok egy új "munkanélküli" intervallumot, és megadom kezdőértéknek az aktuális dátumot (ez kezdetben a kezdődátum)
c) ha tól-t találok, beteszem a halmazba, és lezárom az éppen aktív munkanélküli intervallumot és eltárolom az eredményt adó változóba
d) ha ig-et találok, kiveszem a tól párját a halmazból. ha nincs benne, az hiba, mert előfeltétel hogy a feladat előbb elkezdődjön, minthogy végetérne (ezt meg is adtad)
5. a végén kiszedem az eredmények közül a 0 hosszú intervallumokat.
e) utolsó elemnek az utazás végét veszem, ezzel lezárhatom az esetlegesen aktív munkanélküli intervallumot.Példa, az időt reprezentálják egész számok:
munka1: 5..10
munka2: 15..20
utazás: 5..25tehát az intervallumok, * az igeket jelöli
(5,)5,*10,15,*20,(, 25)
#1: 5-ös utazáskezdet, az leső munkanélküli időszak kezdete 5
#2: 5-ös tólt találok, a munkanálküli intervallumot lezárom (5..5) és elteszem. vagy nem teszem mert 0 hosszú, valamint felteszem a halmazba az 5-öst
#3: 10-es záró, kiveszem a párját, a halmazból, ami most üres lesz, tehát intervallumot nyitok 10-től.
#4: 15-ös tól intervallum, tehát zárom a munkanélküli időszakot és elraktározom (10..15)
.... innen trivi.ez olyasmi lényegében, mint a lengyel forma feldolgozása, csak kicsit spécibb, testreszabott.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Nothing Phone (3a) Lite – mennyit ér a név?
- Genshin Impact (PC, PS4, Android, iOS)
- Linux haladóknak
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Bambu Lab 3D nyomtatók
- 3D nyomtatás
- Tényleg nem változik semmit a Samsung Galaxy S26+?
- Vicces képek
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Milyen hagyományos (nem okos-) telefont vegyek?
- További aktív témák...
- GIGABYTE GeForce RTX 4070 Ti GAMING OC
- Apple Watch Ultra (1. gen.) // 49mm // Black/Gray Trail Loop (M/L)
- Új, bontatlan G.SKILL 32GB (2x16GB) KIT DDR5 6000MHz CL36 Ripjaws M5 Neo RGB White EXPO - 10 év gari
- Új, bontatlan ADATA XPG 32GB (2x16GB) KIT DDR5 6000MHz CL30 Lancer Blade Black XMP/EXPO - 10 év gari
- Új, bontatlan ADATA XPG 48GB (2x24GB) KIT DDR5 6000MHz CL30 Lancer Blade RGB Black - 10 év garival!
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- iKing.Hu - Google Pixel 10 Tensor G5, 120 Hz OLED, tripla kamera-128 GB Használt, karcmentes Gari
- Telefon felvásárlás!! Xiaomi Redmi Note 10, Xiaomi Redmi Note 10s, Xiaomi Redmi Note 10 Pro
- Xiaomi Redmi 14C / 4/128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



