Kirjoittaja: Antti Laaksonen
Kiitokset tehtävästä: Ville Pettersson
Uolevin uusin harrastus on lukujen hävittäminen. Hän on kehittänyt tarkoitukseen yksinkertaisen menetelmän. Jos luku on parillinen, Uolevi jakaa sen kahdella. Jos taas luku on pariton, hän vähentää siitä yhden. Tällä tavalla päästään aina lopuksi lukuun nolla. Esimerkiksi luvun 10 hävittäminen tapahtuu näin: 10 / 2 = 5, 5 - 1 = 4, 4 / 2 = 2, 2 / 2 = 1, 1 - 1 = 0. Luvun 10 hävittämiseen tarvitaan siis kolme jakoa ja kaksi vähennystä.
Jakaminen on Uoleville mieluista, mutta vähentämisestä hän ei juuri pidä. Nyt Uolevi on päättänyt hävittää suuren joukon kokonaislukuja. Kuinka monta kertaa hän joutuu vähentämään ykkösen lukujen hävittämiseksi?
Jokaisessa testitapauksessa on joukko lukuja väliltä 1 - n, jotka kaikki täytyy hävittää. Jos n on 5, hävitettävänä on siis luvut 1, 2, 3, 4 ja 5. Silloin ykkösiä täytyy vähentää yhteensä 1 + 1 + 2 + 1 + 2 = 7 kertaa. Nämä määrät on laskettu tehtävän alussa kuvatun menetelmän avulla.
Tehtävänäsi on laskea vähennysten yhteismäärä, kun n on:
1, 12, 123, 1234, 12345, 123456, 1234567, 12345678, 123456789, 1234567898, 12345678987, 123456789876, 1234567898765, 12345678987654, 123456789876543, 1234567898765432, 12345678987654321
Jokaiselle riville tulee testitapauksen n ja vähennysten lukumäärä.
Vastaus voisi näyttää seuraavalta:
5 7
Tämä vastaus ei kuitenkaan kelpaisi, koska n = 5 ei kuulu testitapauksiin.
158 henkilöllä on tulos. Suluissa oleva luku tarkoittaa ratkaistujen testitapausten määrää.
Chiman (17), Sami (17), Metabolix (17), arcatan (17), sooda (17), FooBat (17), JoinTuanJanohon (17), setä (17), ikkah (17), mikaelh (17), phadej (17), Jogge (17), Daeron (17), KemXy (17), CyberianRat (17), lukujenVihaaja (17), Pekka Karjalainen (17), Mr.Clark (17), jlaire (17), L2-K2 (17), teksturi (17), mleino (17), Torgo (17), Laitinen (17), Grez (17), Sisuaski (17), aaämdee (17), Päärynämies (17), os (17), Konvehti (17), ahr (17), Jepso (17), Legu (17), SirDayBat (17), Jaska (17), tkok (17), jmp (17), dancek (17), Skibiliano (17), Epsilon (17), kllp (17), pjotr (17), copyrite (17), Jhuunhym (17), fergusq (17), jakeke (17), Laakeri (17), jnalanko (17), TapaniS (17), qalle (17), ed-it-ori (17), Matti Holopainen (17), symbols (17), membolic (17), öppis (17), Ruokauuni (17), tykkipeli (17), temu92 (17), hpalo (17), Hansen (17), jannej (17), isashkar (17), pupukani (17), zebraze (17), Janzka (15), Moiman (13), Deewiant (12), exAtuu (12), Milo (12), Dzarg (12), Eax (12), FINDarkside (12), Teuro (12), Meitsi (11), Heikki (11), mikkop92 (11), Vaxu (11), dOb (10), Sharph (10), KeKimmo (10), Mega (10), Jalmari91 (10), Anaatti (10), JrPr (10), Dragondejavu (10), Mizou (10), Ozgu (10), HeiKan (10), johku90 (10), AtskaFin (10), water flea (9), Juice (9), tejeez (9), Masfonos (9), rndprogy (9), juha127 (9), Touho (9), Akseli F (9), Waari (9), Andu (9), HeadCheese (9), JP_94 (9), Macro (9), tuutti (9), ilx (9), ptinsk (9), Ropertto IV (9), dartvaneri (9), HapTech (9), teemuho (9), dewabe (9), gms (9), Hirwi (9), ezki82 (9), Nameci2718 (9), vpiili (9), nikke234 (9), Brebl (9), zigilii (9), Salama (9), ein0e (9), Niko (8), Pumppu (8), ajv (8), killedwhale (8), salaisuuksiensäilyttäjä (8), Geewilliam (8), nneeoo (8), akiky (8), reissuhemuli (8), petatale (8), qwerty12302 (8), TeeVee (7), raakaliha (7), AkeMake (7), simosa (7), Oskuz (7), joah (7), Kaukainen amatööri (7), petrinm (6), uneton- (6), Tomler (6), Putkalainen (5), Jokotai (5), Professori (2), Szanne (2), Apodus (1), remontti-reiska (1), tesmu (1), black cat (1), pake10 (1), Joonazan (1), tpohjis (1), Tanzzu (1), heisti (1), Hengilö (1), Pentu (1), juusosilvo (1)
Kirjaudu sisään Ohjelmointiputkaan, niin voit lähettää vastauksen tehtävään.
Katso myös Putkapostista.