Egy nagyszabású építkezéshez részletes tervet készítettek, amelyben többek között azt is megadják, hogy egy-egy munka hány napig tart. A munkák sorrendje nem tetszőleges. A tervben a sorrendet a b feltételpárok írják elő. Az a b feltételpár azt jelenti, hogy a b munkát csak az a munka befejezése után lehet elkezdeni. Az építkezés az 1. napon kezdődik. N munka esetén a munkákat az 1,...,N számokkal azonosítjuk.Feladat
Írj programot az alábbi részfeladatok megoldására!Bemenet
A. Számítsd ki, hogy a terv végrehajtásához minimálisan hány nap szükséges!
B. Add meg az egyes munkák legkorábbi kezdési idejét a számuk sorrendjében! (Ez az a legkorábbi időpont, amikor az adott munkát el lehet kezdeni, mert az összes korábbi, ugyancsak a lehető legkorábban elkezdett munka már befejeződött.)
C. Add meg a munkák legkésőbbi kezdési idejét a számuk sorrendjében! (Ez az a legkésőbbi időpont, amikor az adott munkát el kell kezdeni ahhoz, hogy ne késleltesse az építkezés befejezését.)
D. Adj meg egy ún. kritikus utat! (Kritikus útnak nevezzük olyan munkák egy sorozatát, amelyeket az adott sorrendben lehet elvégezni, ésE. Add meg, hogy minimum hány vállalkozóval kell szerződést kötni a munkák elvégzésére, ha egy vállalkozó egy időben csak egy munkán tud dolgozni és ha minden munka a lehető legkorábban kezdődik!
- a munkák összideje megegyezik a terv végrehajtásához minimálisan szükséges idővel, továbbá
- minden egyes munka legkorábbi és legkésőbbi kezdési ideje ugyanaz.)
F. Add meg, hogy minimálisan mennyi az összes állási idő! (Az állási idő abból adódik, hogy egy vállalkozó két, időben egymást követő munka elvégzése között várakozásra kényszerülhet, ha a soron következő munkát még nem kezdheti el.) Feltesszük, hogy minden munka a lehető legkorábban kezdődik, és a kivitelezők a lehető legkevesebb vállalkozót alkalmazzák.A TERVx.BE állomány első sora a munkák N (1<=N<=100) számát tartalmazza. A második sorban N db pozitív egész szám van, ahol az i-edik szám a sorban az i-edik munka végrehajtásához szükséges napok száma (<=100). A harmadik sorban a feltételpárok M (0<=M<=1000) száma van. A következő M sor mindegyike egy-egy a b számpárt tartalmaz (1<=a, b<=N); ami azt jelenti, hogy a b munkát csak az a munka befejezése után lehet elkezdeni.Bemenet
A TERVx.KI szöveges állományba és a képernyőre hat sorba kell írni az A.-F. részfeladatok megoldását. Ha valamelyik részfeladat megoldása hiányzik, akkor a megfelelő sor legyen üres! A B., C. és D. részfeladatok esetén (2., 3. és 4. sor) a számsorozatok elemeit egy-egy szóköz válassza el.Példa:
TERV0.BE | TERV0.KI |
5
1 2 1 3 2 5 1 2 2 5 1 3 3 4 2 4 |
6
1 2 2 4 4 1 2 3 4 5 1 2 4 2 1 |
Karaktersorozatot keresni összekapcsolt állományokban is lehet. Csak a kiinduló állomány nevét ismerjük, a többit (legfeljebb 200) a hivatkozásokból kell kiszedni.
Karaktersorozatot az alábbi feltételek mellett kereshetünk:
A. a karaktersorozat
csak teljes szó lehet, más szó részeként nem szabad megtalálni (a szavak
az angol ábécé kis- és nagybetűiből állnak, és szóköz, írásjel vagy sorvég-jel
határolja őket),
B. a karaktersorozat
lehet szó része is;
C. nem szabad
megkülönböztetni a nagy- és kisbetűket, azaz pl. alma
és ALmA azonosnak számít;
D. meg kell
különböztetni a nagy- és kisbetűket.
Feladat
Példa:
Bemenet |
|
||
WEB0.BE | ELSO.TXT | MASODIK.TXT | WEB0.KI |
ELSO.TXT
BC xyz zzz |
xyz zzz
Xyz, qwert &Masodik.txt& zzz |
UVWXYZ | ELSO.TXT: 1 8
MASODIK.TXT: 4 ELSO.TXT: 5 18 |