33.Prednaska/Cvicenie0: Rozdiel medzi revíziami

Z Pascal
Prejsť na: navigácia, hľadanie
 
(7 intermediate revisions by the same user not shown)
Riadok 27: Riadok 27:
  
 
<!-- -->
 
<!-- -->
 
=== Cvičenie ===
 
 
 
backtracking - zatiaľ bez grafov
 
* generovanie postupnosti číslic - všetky 6-ciferné len z číslic {2,3,5}
 
* generovanie 3-písmenových slov (napr. z možiny {a, b, ..., z})
 
* generovanie slov dĺžky 5: spoluhláska + samohláska + spoluhláska + samohláska + spoluhláska
 
:* spoluhláska z množiny {k, m, p}
 
:* samohláska  z množiny {a, e, o}
 
:* vypísať všetky dĺžky 5 alebo aj kratšie
 
* magické štvorce (všetky riešenia, alebo stačí len 1; v niektorých políčkach už môžu byť zadané hodnoty):
 
:* v každom riadku a stĺpci práve raz 1..N
 
:* 1..N*N: v každom riadku a stĺpci rovnaký súčet
 
* koľkými spôsobmi sa dá prejsť v sieti MxN z ľavého horného do pravého dolného rohu
 
:* riešenia vypisovať tak, že v každom políčku je poradové číslo v ceste, nenavštívené budú 0
 
 
 
<!-- -->
 
 
=== Domáca úloha ===
 
 
1. štvorcová plocha má MxN políčok, niektoré z nich sú už obsadené (prečítať z textového súboru)
 
* hľadáme ľubovoľné pokrytie tejto plochy triominami
 
:* triomina sú zložené z troch štvorčekov - navzájom sa dotýkajú stranami - neležia v jednom rade
 
* počet voľných políčok v ploche je násobok 3
 
* napr. pre zadanie (x sú obsadené) je takéto pokrytie triminami (a..e)
 
{{Prog}}
 
..x.x..    aaxcxee
 
......    abccde
 
..x..x    bbxddx
 
|}
 

Aktuálna revízia z 12:00, 15. máj 2013

33. Cvičenie


< 33.Prednáška | riešené úlohy


Rozcvička

1. napíšte konštruktor TGraf2.Create(...):

type
  TGraf1 = class
    G: array [1..N,1..N] of Boolean;
  end;
 
type
  TGraf2 = class
    G: array [1..N] of set of 1..N;
    constructor Create(Graf1: TGraf1);
  end;
  • druhý graf s reprezentáciou pole množín bude kópiou grafu s reprezentáciou maticou susedností

2. skoro to isté, ale opačne: constructor TGraf1.Create(Graf2: TGraf2);