Új hozzászólás Aktív témák
-
modder
aktív tag
válasz
Gyeptegla
#4681
üzenetére
egyszerűbbé teheted az életed, ha csinálsz egy típust a számoknak
class Szam {
String eloado;
String cim;
int hossz; //masodperc
public Szam(String eloado, String cim, int hossz) {
// ertekadas a tagvaltozoknak
}
}Felteszem, hogy sikerült beolvasnod a sorokat. Biztonság kedvéért http://stackoverflow.com/questions/5868369/how-to-read-a-large-text-file-line-by-line-using-java Ha el akarod őket menteni a memóriában, akkor pl. (pszeudokód)
List<Szam> szamok = new ArrayList<Szam>();
while ((line = br.readLine()) != null) {
Szam aktualisSzam = parse(sor);
szamok.add(aktualisSzam);
}De elárulom neked, hogy ez egyik feladathoz sem kell.
B)
Szam elozoSzam = br.readLine(); // elso sor
while ((line = br.readLine()) != null) { // tobbi sor
Szam aktualisSzam = parse(sor);
if ( elozoSzam.hossz < aktualisSzam.hossz ) {
// nem igaz
}
elozoSzam = aktualisSzam;
}C) hasonlóan, de egy int-ben összegzed a számok hosszát (ha a sorok végére értél, elölről kezded, tehát két ciklust kell egymásba ágyaznod). A ciklusból kilépési feltétel az, a osszHossz >= K. Akkor az abban a ciklusban beolvasott szám lesz a keresett.
D) Itt már kell egy Map
Map<String,Szam> perCim = new HashMap<String,Szam>();Végigmész a sorokon, és megnézed, hogy az aktuális szám címével van-e szám a mapban. perCim.get(cim) != null. Ha nincs, beteszed.
Ha van, akkor megnézed, hogy az aktuális hosszabb-e, mint a bentlévő, és a feltételnek megfelelően cseréled.Ja, és köszönet, nagyobb nyelvtani hibák nélkül, tagolással, és az írásjelek megfelelő használatával tetted fel a kérdést. Ritkaságszámban megy az ilyen

Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Skull&Co. kemény tok Asus ROG Ally és Ally X gépekhez
- Bomba ár! Dynabook Portege X30-F - i5-8GEN I 8GB I 256SSD I 13,3" FHD I BillSér I Cam I W11 I Gari!
- GYÖNYÖRŰ iPhone 12 Mini 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS2955, 100% Akksi
- ASUS VivoBook S16 S3607QA-PL018W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


