MeesterDaan (talk | contribs) m |
MeesterDaan (talk | contribs) |
||
Line 20: | Line 20: | ||
{| | {| | ||
− | ![[Image:Tegelset1.jpg|thumb|border|Tegelset #1]] | + | ![[Image:Tegelset1.jpg|thumb|upright=2|border|Tegelset #1]] |
![[Image:Tegelset2.jpg|thumb|border|Tegelset #2]] | ![[Image:Tegelset2.jpg|thumb|border|Tegelset #2]] | ||
![[Image:Tegelset3.jpg|thumb|border|Tegelset #3]] | ![[Image:Tegelset3.jpg|thumb|border|Tegelset #3]] |
Revision as of 21:28, 13 October 2012
Inleiding
Tegelzetten is een vak apart. Hoewel de meeste zettingen regelmatig zijn (denk aan de vierkantjes in keuken en badkamer) zijn er ook ambitieuzere patronen, zoals een 'versailles-pattern' waarin twee of drie verschillende tegeltjes in een veelal herhalend patroon worden gerangschikt. In een zeldzaam geval is de zetting echt onregelmatig, en is de kunstenaar of architect veel tijd kwijt aan het in elkaar puzzelen.
In deze opdracht zul je een algoritme ontwikkelen om tegelsets van oplopende moeilijkheid in elkaar te zetten. Er is java-sourcecode beschikbaar.
Opdracht
a) Verzin een algoritme om tegelset #1 in het bijgeleverde invoervak te zetten. Een zetting is correct als er geen tussenruimte tussen de tegels is, en tegels elkaar niet overlappen. Tegels hoeven niet gedraaid te worden.
b) Verzin een algoritme om tegelset #2 in het bijgeleverde invoervak te zetten. Een zetting is correct als er geen tussenruimte tussen de tegels is, en tegels elkaar niet overlappen. Tegels hoeven niet gedraaid te worden.
c) Verzin een algoritme om tegelset #3 in het bijgeleverde invoervak te zetten. Een zetting is correct als er geen tussenruimte tussen de tegels is, en tegels elkaar niet overlappen.
Advanced
We werken met rechthoeken waarvan de ene zijde net één eenheid korter is dan de andere zijde. Deel c van de vorige opdracht bestaat uit rechthoeken 1 tot en met 20 (1x2, 2x3, 3x4 .... 20x21), die samen in een groter rechthoek (55x56) passen. Kijk of er een oplossing bestaat voor 1 tot en met 34. Je weet niet of de rechthoeken gedraaid moeten worden, en hoe groot het invoervlak moet zijn. Probeer het zo goed mogelijk te passen!
Zie ook de Puzzels2011 pagina over Eternity II