Vuoden päättyessä on aika katsastaa vuosi sitten käynnistyneen vuosilukukilpailun 2013 vastauksia. Tavoitteena oli muodostaa luvut yhdestä sataan käyttäen vuosiluvussa 2013 esiintyviä numeroita sekä peruslaskutoimitusten lisäksi joukkoa matemaattisia funktioita. Vaikka säännöt olivat melko väljät, jäi sadan luvun listalta lopulta kaksi lukua muodostamatta. Sääntöjen puitteissa luvut 83 ja 88 näyttäisivät nimittäin olevan sen verran omalaatuiset, ettei niitä tahdo pystyä muodostamaan annetuilla sääntötyökaluilla. Jonkin aikaa pyörittelin erilaisia ratkaisumalleja, kunnes jouduin lopulta toteamaan nämä kaksi lukua mahdottomiksi. Sata lukua syntyi suhteellisen helposti ja vain muutamia lukuja jouduin pohtimaan hieman pidempään.
Kilpailun sääntöjen mukaan sama luku voidaan ratkaista kuitenkin useilla eri tavoilla. Esimerkiksi luku 90 on esitettävissä lausekkeena ((2 + 0!)! - 1)!! * 3!, joka ensi alkuun näyttää turhan monimutkaiselta etenkin, kun saman luvun voi ilmaista myös lausekkeella (2 + 1 ) * 30, joka on jo huomattavasti yksinkertaisempi. Jälkimmäinen ratkaisumalli ei tosin ole kovin elegantti, koska siinä numerot 3 ja 0 on yhdistetty ja lisäksi niiden järjestys on vaihdettu, kun sitä vertaa vuosiluvussa 2013 olevien numerojen järjestykseen. Säännöt tosin sallivat tämänkaltaisen yhdistelyn ja järjestelyn. Mielestäni edellä esitetty monimutkaisempi ratkaisu kunnioittaa enemmän kilpailun henkeä, koska siinä kaikki numerot ovat itsenäisiä ja niiden järjestyskin on sama kuin vuosiluvussa, vaikkakin lopputuloksena on kovin sotkuisen näköinen lauseke. Vastausten pisteytys ei välttämättä ole helppoa. Etusijalla ovat ratkaisut, joissa numerot ovat vuosiluvun numerojen järjestyksessä. Toisaalta mitä yksinkertaisempi lauseke on, sitä paremmat pisteet se saa.
Esittelen tässä omat ratkaisuehdotukseni. Tarkistin ratkaisuehdotukseni taulukkolaskentaohjelmalla, jossa muodostin kysytyn numeron kehittelemälläni lausekkeella. Käyttämässäni englanninkielisessä Google Docs -taulukkolaskentasovelluksessa kertomafunktiona käytin FACT()-funktiota. Kaksoiskertomaa varten sovelluksesta löytyy FACTDOUBLE()-funktio. Neliöjuurta varten käytin SQRT()-funktiota ja potenssiin korotin POWER()-funktiolla. Ratkaisuilleni löytyy varmasti vieläkin yksinkertaisempia muotoja, mutta nämä ratkaisut ovat ne ensimmäiset, jotka tulivat mieleeni. Lisää erilaisia ratkaisumalleja löytyy The Math Forum -sivuston vuosilukukilpailun vastaussivulta.
Vuosilukukilpailun 2013 ratkaisuja
1 = (2 + 0 + 1) / 3 2 = 2 + 0 * 1 * 3 3 = 2 * 0 * 1 + 3 4 = 2 + 0 - 1 + 3 5 = 2 + 0 * 1 + 3 6 = 2 + 0 + 1 + 3 7 = 2 * 0 + 1 + 3! 8 = 2 + 0 * 1 + 3! 9 = (2 + 0 + 1) * 3 10 = 2 + 0! + 1 + 3! 11 = (2 + 0) * 3! - 1 12 = (2 + 0 * 1) * 3! 13 = (2 + 0) * 3! + 1 14 = (2 + 0) * (1 + 3!) 15 = 0! + 2 * (1 + 3!) 16 = 2 * (0! + 1 + 3!) 17 = (2 + 0!) * 3! - 1 18 = (2 + 0 + 1) * 3! 19 = (2 + 0!) * 3! + 1 20 = (3! - 1)! / (2 + 0!)! 21 = (2 + 0!) * (1 + 3!) 22 = -2 + 0 + (1 + 3)! 23 = -2 + 0! + (1 + 3)! 24 = (2 + 0 - 1 + 3)! 25 = (2 - 0!) + (1+3)! 26 = 2 + (0 + 1 + 3)! 27 = 2 + 0! + (1 + 3)! 28 = (2 + 0!)^3 + 1 29 = 30 - 2 + 1 30 = ((2 + 0!)!)! / (1 + 3)! 31 = 2^(3! - 0!) - 1 32 = 2^(0! + 1 + 3) 33 = -((2 + 0!) - 1)!! + 3!! 34 = 3!^2 - 0! - 1 35 = (3!)! / 20 - 1 36 = (2 + 0 + 1)! * 3! 35 = (3!)! / 20 + 1 38 = -SQRT(.1^(-2)) + 0 + (3!)!! 39 = -SQRT(.1^(-2)) + 0! + (3!)!! 40 = (0! + 3) * SQRT(.1^(-2)) 41 = -(2 + 0!)! - 1 + (3!)!! 42 = -(2 + 0 + 1)! + (3!)!! 43 = -(2 + 0!)! + 1 + (3!)!! 44 = -2 - 0! - 1 + (3!)!! 45 = -2 + 0 - 1 + (3!)!! 46 = -2 + 0 * 1 + (3!)!! 47 = -2 + 0 + 1 + (3!)!! 48 = (2 + 0) * (1 + 3)! 49 = (3! + 1)^2 + 0 50 = 2 * (0! + (1 + 3)!) 51 = 2 + 0 + 1 + (3!)!! 52 = 2 + 0! + 1 + (3!)!! 53 = (2 + 0!)! - 1 + (3!)!! 54 = (2 + 1)! + 0 + (3!)!! 55 = (2 + 0!)! + 1 + (3!)!! 56 = (2 + 0! + 1)!! + (3!)!! 57 = (2 + 0!)!! - (3!)!! 58 = SQRT(.1^(-2 + 0)) + (3!)!! 59 = 3! * SQRT(.1^(-2)) - 0! 60 = SQRT((3!)! * ((2 + 0!)! - 1) 61 = 3! * SQRT(.1^(-2)) + 0! 62 = 2^3! - 0! - 1 63 = 2^3! + 0 - 1 64 = 2^((0! + 1) * 3) 65 = 2^3! + 0 + 1 66 = 2^3! + 0! + 1 67 = 201 / 3 68 = 2 * (-0! / .1) + (3!)!! 69 = 21 + 0 + (3!)!! 70 = (0! + 3!) * SQRT(.1^(-2)) 71 = (3!)! / SQRT(.1^(-2)) - 0! 72 = (2 + 0! + 1)! * 3 73 = (3!)! / SQRT(.1^(-2)) + 0! 74 = 2 + 0 + (.1 * (3!)!) 75 = .2^(-0!) * (-1 + 3!)!! 76 = 2 * ((-0! / .1) + (3!)!!) 77 = .2^(-0!) + .1 * (3!)! 78 = (2 + 0!)! + (.1 * (3!)!) 79 = (2 + 3!) / .1 - 0! 80 = SQRT(.1^(-2)) * (0! + 3)!! 81 = (2 + 0!)^(1 + 3) 82 = 2 + (0! + 3)!! / .1 83 = 84 = -21 + (0! + 3!)!! 85 = -20 + (1 + 3!)!! 86 = (3!)!! - (0! / .1) 87 = (0! / .2)!! + .1 * (3!)! 88 = 89 = 3^2 / .1 - 0! 90 = ((2 + 0!)! - 1)!! * 3! 91 = 3^2 / .1 + 0! 92 = 2 * (-0! - 1 + (3!)!!) 93 = -12 + (0! + 3!)!! 94 = 2 * (0 - 1 + (3!)!!) 95 = (3! + 0!)!! - SQRT(.1^(-2)) 96 = (2 + 0 * 1) * (3!)!! 97 = (2 + 0!)!! + 1 + (3!)!! 98 = -2 + .1^(0! - 3) 99 = -(2 + 1)! + (0! + 3!)!! 100 = 2 * (0! + 1 + (3!)!!)