Portál AbcLinuxu, 20. dubna 2024 06:13
Zdravím. Potřeboval bych program, do který nakreslí trojúhelník o rozměrech které si uživatel zadá, jeho kružnici opsanou a vepsanou.
A pak úlohu z mat. olympiády
„Píšeme dějiny, týhletý krajiny, jaký to příběh je ..” prozpěvoval si král Zloburtus a rozverně upravoval učebnice dějepisu. Přece jen byly napsány za jeho předchůdce krále Pravdomila III. a ten měl na historii příliš upjaté názory. Třeba tvrdil, že rod Pravdomilů byl starší a urozenější než rod Zloburtusů. Což ovšem nebyla pravda a bylo potřeba vše napravit. To je spousta práce, a tak vás královským rozkazem požádal o program, který by dokázal nahrazovat nevhodná slova slovy vhodnějšími.
Pro zadaný seznam nevhodných slov a jejich náhrad upravte vstupní text tak, že každý výskyt nevhodného slova v textu nahradíte jeho vhodnějším „ekvivalentem”.
Vstupní soubor se jmenuje ucebnice.in. Na prvním řádku souboru se nachází přirozené číslo N (1≤N≤100 000), které udává počet nevhodných slov. Následuje N řádků, přičemž na každém z nich se nacházejí vždy dvě slova oddělená mezerou, která jsou tvořena pouze velkými písmeny. První slovo na každém z těchto N řádků je „nevhodné” a druhé je jeho vhodnější náhrada. Od (N+2)-ého řádku až do konce souboru pak následuje samotný text učebnice. Text je tvořen pouze velkými písmeny anglické abecedy a mezerami (a konci řádků), přičemž souvislé úseky písmen tvoří jednotlivá slova. Můžete předpokládat, že žádné slovo nebude delší než 255 písmen a že N nevhodných slov je navzájem různých.
Výstupní soubor se jmenuje ucebnice.out. Výstupem programu je text, ve kterém byla všechna nevhodná slova nahrazena jejich vhodnějšími ekvivalenty. Ostatní slova, tj. zbytek souboru, musí zůstat beze změny. Výstupní text musí též zachovávat mezery mezi slovy a odřádkování podle vstupního souboru.
Vstupní soubor ucebnice.in:
5
PRAVDOMIL ZLOBURTUS
ZLOBURTUS PRAVDOMIL
DRACKA DRAKA
ZROUNA MRACKA
ZBYTECNA DVOJICE
A PAK HRDINNY PRAVDOMIL PRAVDOMILUJICNE SRAZIL K ZEMI DRACKA ZROUNA
VSE LZE NAJIT VE FILMU HISTORIE RODU PRAVDOMILU
V TETO UCEBNICI BUDE HANEN ZLOBURTUS
Výstupní soubor ucebnice.out:
A PAK HRDINNY ZLOBURTUS PRAVDOMILUJICNE SRAZIL K ZEMI DRAKA MRACKA
VSE LZE NAJIT VE FILMU HISTORIE RODU PRAVDOMILU Vše popsané, která část co dělá. Předem moc díky. Prosím zaslat na email thethrasher33@gmail.com
V TETO UCEBNICI BUDE HANEN PRAVDOMIL
Pak ještě jednu úlohu:
Vybalancovaný úsek
Souvislý úsek v posloupnosti celých čísel nazveme, jestliže počet kladných a záporných čísel v úseku se sobě rovnají.
Je dáno celé číslo 1<=N<=1000 a posloupnost N celých čísel. Napište program který určí délku maximálního vybalancovaného úsxeku v dané posloupnosti čísel. Při návrhu programu se zaměřte na dosažení co nejvyšší rychlosti výpočtu.
Příklad: pro N =10 a posloupnost čísel 8 6 4 7 -5 -3 2 0 -1 9 bude výsledkem číslo 7, neboˇˇt nejdelší vybalancovaný úsek 4 7 -5 -3 2 0 -1 ( případně stejně dlouhý vybalancovaný úsek 7 -5 -3 2 0 -1 9) je tvořen sedmi čísly.
Ještě jednou díky moc, posílejte na thethrasher33@gmail.com
a co za to ponukas ty? :o)
Tohle docela spěchá šéfe, pak se kdyžtak dohodnem, no... Ale nutně to potřebuju
to zadanie vyzera dost jednoducho, tak to skus zvladnut sam, urcite ti to da viacej ;o)
To není domácí úloha, to je školní úloha :-D
Jenže my máme učitele, co učí stylem "Tady máte nápovědu, a vyřešte tenhle úkol"
Takže nikdo nic neumí a hledá kde může...
Tak kdyby byl někdo tak hodnej, byl bych mu moc vděčnej...
vobec by ma neprekvapilo, keby to bola domaca uloha do skolySprávne. A vyučovanou témou je "outsourcing"
Správne. A vyučovanou témou je "outsourcing"hmm, to ma nenapadlo
Správne. A vyučovanou témou je "outsourcing"Asi tak. Když je někdo dobrej jen ve znásilňování ostatních, tak to dotáhne (bohužel) docela daleko.
Pro zadaný seznam nevhodných slov a jejich náhrad upravte vstupní text tak, že každý výskyt nevhodného slova v textu nahradíte jeho vhodnějším „ekvivalentem”.
l=`head -1 ucebnice.in ` ; tail -q -n +2 ucebnice.in | head -n +$l | sed -e 's, ,/,' -e 's,$,/g,' -e 's,^,s/,' > s ; n=`wc -l < ucebnice.in` ; tail -`echo "$n - $l - 1 " | bc ` ucebnice.in | sed -f s > ucebnice.out; rm s
mi to pripomina toto (puvodem odtud)
Ulohy ve skole jsou na to, aby se jeden naucil uvazovat. Jiste, je jednodussi to zkopirovat odjinud, ale stoji to za to? Pristi uloha bude jeste slozitejsi a s tou uz nehnes vubec. (za predpokladu, ze nestudujes dejepis) Predpokladam, ze ten kantor, co to zadal mohl byt blby jak lopata, ale kdyby to potreboval pro sebe, tak to nebude zadavat studentom. Myslim si, ze vetsinu z toho, co po Vas chce mate probranou (je popoleti, ze?). (alespon ta matemetika neni snad problem, jak nakreslit 3uhelnik - propojis 3 body useckama - a to najdes v helpu...)
Ahoj,
předně by bylo fajn, kdyby jsi příště zadání zbavil toho slovního balastu.
Jedná-li se pouze o celá slova, může dobře posloužit trie, kde si pak ke každému slovu uložíš, čím to chceš nahradit. Pokud najdeš vhodnou hashovací funkci, pak stejně dobře poslouží i hashování. Pokud se má jednat o libovolné podřetězce, bude třeba použít Aho-Corasick stroj -- bude též třeba zvážit, co udělat, když by nahrazením podřetězce vznikl jiný, jenž se má/může také nahradit -- to by se dalo pořešit vhodným použitím zásobníku.
Jinak chtít okomentované řešení poslat soukromě na mail mi přijde jako drzost.
No, tak asi takhle ... vzhledem k tomu že to je matematická olympiáda kde tvůj neúspěch nic neovlivňuje, tak mi přijde skutečně silně neetické (a navíc hloupé - nevyřešíš-li to sám v klidu, nedokážeš podobnou úlohu vyřešit ani v okresním kole) žádat o pomoc. Navíc to nahrazování je skutečně jednoduché ... ale jako jedna z možností jak to řešit ... přestav si jak bys ten případ řešil ty ručně a pokud ti to přijde snadné tak jej implementuj. Programování je o imaginaci, manipulaci s představami/symboly a jsem si jist že tvůj učitel ocení i snahu či případně poradí nějakou cestu jak řešit. Pokud vám nevysvětlil jak programovat tak zauvažuj že na googlu vyhledáš něco jako tutoriál programování pascal, nebo tak něco. A pamatuj že když se naučíš učit iniciativně sám tak to pak na vysoké škole jako když najdeš ;).
Já bych v tom neviděl problém. Místo zadání sem hoď řešení a on ti už někdo pomůže s převedením do pascalu...
Tento priklad bol aj na slovensku kategoria A (vyssia) domace kolo uz to mam vyriesene ak mate zaujem poslem zdrojak. e-mail: mojosoft@centrum.sk
Pozri si www.trsek.com/zadania
doufam, ze ten kantor je co k cemu a tyto stranky zna
Tiskni Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.