Lukuspiraali. Syöte. Tuloste. Esimerkki 1. Esimerkki 2. Esimerkki 3. Tarkastellaan seuraavanlaisia lukuspiraaleita:



Samankaltaiset tiedostot
Syötteen ainoalla rivillä on yksi positiivinen kokonaisluku, joka on alle = Luvussa ei esiinny missään kohtaa numeroa 0.

S: siirtää listan ensimmäisen luvun viimeiseksi V: vaihtaa keskenään listan kaksi ensimmäistä lukua

Kohdissa 2 ja 3 jos lukujen valintaan on useita vaihtoehtoja, valitaan sellaiset luvut, jotka ovat mahdollisimman lähellä listan alkua.

Merkkijono on palindromi, jos se säilyy samana, vaikka sen kääntää väärinpäin.

Sinulle on annettu bittijono, ja tehtäväsi on muuttaa jonoa niin, että jokainen bitti on 0.

Kaulaketju. Syöte. Tuloste. Esimerkki 1. Esimerkki 2

Numeropelissä 3x3-ruudukko sisältää luvut 1, 2,, 9. Tehtäväsi on järjestää ruudukko näin:

Syötteen ensimmäisellä rivillä on kokonaisluku n, testien määrä (1 n 10). Tämän jälkeen jokaisella seuraavalla rivillä on kokonaisluku x (0 x 1000).

Esimerkiksi jos käytössä ovat kirjaimet FFII, mahdolliset nimet ovat FIFI ja IFIF. Näistä aakkosjärjestykssä ensimmäinen nimi on FIFI.

Task list Submit code Submissions Messages Scoreboard View queue Edit contest

Task list Submit code Submissions Messages Scoreboard View queue Edit contest

// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

Matriisipotenssi. Koska matriisikertolasku on liitännäinen (sulkuja ei tarvita; ks. lause 2), voidaan asettaa seuraava määritelmä: ja A 0 = I n.

Tehtävä Vastaus

Datatähti 2019 loppu

Datatähti 2019 alku. task type time limit memory limit. A Kolikot standard 1.00 s 512 MB. B Leimasin standard 1.00 s 512 MB

Ratkaisut Summa on nolla, sillä luvut muodostavat vastalukuparit: ( 10) + 10 = 0, ( 9) + 9 = 0,...

3. Kuvio taitetaan kuutioksi. Mikä on suurin samaa kärkeä ympäröivillä kolmella sivutahkolla olevien lukujen tulo?

finnish BOI 2015, päivä 1. Muistiraja: 256 MB

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

1. Mikä on lukujen 10, 9, 8,..., 9, 10 summa? 2. Mikä on lukujen 10, 9, 8,..., 9, 10 tulo? =?

Ortogonaalinen ja ortonormaali kanta

v 8 v 9 v 5 C v 3 v 4

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Hyvän salasanan tunnusmerkit Hyökkääjästä salasanan pitää näyttää satunnaiselta merkkijonolta. Hyvän salasanan luominen: Luo mahdollisimman pitkä

Kirjoita, tallenna, käännä ja suorita alla esitelty ohjelma, joka tervehtii käyttäjäänsä.

Uolevin reitti. Kuvaus. Syöte (stdin) Tuloste (stdout) Esimerkki 1. Esimerkki 2

Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti

Kenguru 2017 Student lukio

Ohjelmoinnin peruskurssi Y1

Tehtävä 1: Veroprosentti

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Toisessa kyselyssä alueella on 1 ruudussa A ja 3 ruudussa B, joten suosituin ehdokas on B.

Puzzle SM Pistelasku

// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

Task list Submit code Submissions Scoreboard View queue Edit contest

Kenguru 2015 Student (lukiosarja)

Ohjelmoinnin perusteet Y Python

Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö

Muuttujien määrittely

KÄYTTÖVALTUUSHALLINTA (KVH) 1 (14) Käyttöohje rekisterinpidon yhteyshenkilölle

OPISKELIJAN REKISTERÖITYMINEN JA TYÖTILA-AVAIMEN KÄYTTÖ. 1. Mitä kaikkea saan käyttööni samoilla tunnuksilla?

KUITUPUUN PINO- MITTAUS

Maahan on pudonnut omenoita, ja Uolevi aikoo poimia niitä. Tiedät jokaisesta omenasta, kuinka painava se on.

Kaikkiin tehtäviin laskuja, kuvia tai muita perusteluja näkyviin.

Äärettömät sanat. Aleksi Saarela. Matematiikan ja tilastotieteen laitos ja FUNDIM-keskus, Turun yliopisto. A. Saarela (TY) Äärettömät sanat 1 / 28

811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu

Helsingin seitsemäsluokkalaisten matematiikkakilpailu Ratkaisuita

LUKUJONOT. 1) Jatka lukujonoja. 0, 1, 2,,,, 6, 8, 10,,,, 8, 12, 16,,,, 18, 15, 12,,,, 30, 25, 20,,,, 2) Täydennä lukujonoihin puuttuvat luvut.

1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa:

Järvitesti Ympäristöteknologia T571SA

Kenguru 2019 Student lukio

Kenguru 2018 Cadet (8. ja 9. luokka)

Kurssikoe on maanantaina Muista ilmoittautua kokeeseen viimeistään 10 päivää ennen koetta! Ilmoittautumisohjeet löytyvät kurssin kotisivuilla.

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Käänteismatriisin. Aiheet. Käänteismatriisin ominaisuuksia. Rivioperaatiot matriisitulona. Matriisin kääntäminen rivioperaatioiden avulla

ICS-C2000 Tietojenkäsittelyteoria Kevät 2016

Tehtävä: FIL Tiedostopolut

Laatija: Staria Oyj Ostolaskujen käsittelyohje versio 0.1 Hyväksyjä: Jukka Suonvieri OSTOLASKUJEN KÄSITTELY

Ohjelmoinnin perusteet Y Python

Tämä ohje on tehty MPY:n laajakaista-asiakkaiden käytössä olevien sähköpostipalveluiden hallintatyökalu Omahallinta-sivustoa varten.

Harjoitus 5 (viikko 41)

Ohjelmointi 1 Taulukot ja merkkijonot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Metropolia ammattikorkeakoulu TI00AA : Ohjelmointi Kotitehtävät 3

Ohjelmoinnin peruskurssi Y1

Hahmon etsiminen syotteesta (johdatteleva esimerkki)

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE

SELECT-lauseen perusmuoto

Uuden lukuvuoden aloitus ViLLEssa

Kerta 2. Kerta 2 Kerta 3 Kerta 4 Kerta Toteuta Pythonilla seuraava ohjelma:

17 BUDJETOINTI. Asiakaskohtainen Budjetti Ylläpito-ohjelma. Dafo Versio 10 BUDJETOINTI. Käyttöohje. BudgCust Yleistä

KAAVAT. Sisällysluettelo

Matriisit, L20. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

VARIANSSIANALYYSI ANALYSIS OF VARIANCE

2.8. Kannanvaihto R n :ssä

ITKP102 Ohjelmointi 1 (6 op)

Kenguru 2012 Junior sivu 1 / 8 (lukion 1. vuosi)

Johdatus Ohjelmointiin

Liite 3 INDEKSOINTI. 1. Digitoitavat kirjatyypit

LIITE 1 VIRHEEN ARVIOINNISTA

Kurssin loppuosassa tutustutaan matriiseihin ja niiden käyttöön yhtälöryhmien ratkaisemisessa.

Kenguru 2015 Benjamin (6. ja 7. luokka)

Ohjelmoinnin perusteet Y Python

Matriisit, kertausta. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

Päivityspalvelu. Tietuekuvaus. Tietuekuvaus 1 (5) Päivityspalvelu. Julkinen - Public

Toinen harjoitustyö. ASCII-grafiikkaa 2017

Oma nimesi Tehtävä (5)

Kenguru 2013 Ecolier sivu 1 / 8 (4. ja 5. luokka)

Harjoitus 6 (viikko 42)

n! k!(n k)! n = Binomikerroin voidaan laskea pelkästään yhteenlaskun avulla käyttäen allaolevia ns. palautuskaavoja.

Algoritmit 1. Luento 13 Ti Timo Männikkö

Transkriptio:

A Lukuspiraali Tarkastellaan seuraavanlaisia lukuspiraaleita: 7 8 9 10 6 1 2 11 5 4 3 12 16 15 14 13 21 22 23 24 25 20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 17 16 15 14 13 Spiraalin keskellä on luku 1, josta spiraali alkaa kiertyä vuorotellen oikealle, alas, vasemmalle ja ylös. Yllä olevat lukuspiraalit ovat kokoja 4x4 ja 5x5. Tehtävänä on selvittää, mikä luku on kokoa nxn olevassa lukuspiraalissa rivillä y sarakkeessa x. Indeksointi alkaa luvusta 1. Syötteen ensimmäisellä rivillä on yksi kokonaisluku: lukuspiraalin koko n. Syötteen toisella rivillä on kaksi kokonaislukua välilyönnein erotettuina: halutun kohdan rivi y ja sarake x. Voit olettaa, että n on korkeintaan miljoona. Ohjelman tulee tulostaa yksi kokonaisluku: lukuspiraalin annetussa kohdassa oleva luku. 4 8 1 2 5 15 5 3 563237 191678581889 172881 500525

B Palindromit Palindromi on merkkijono, joka on sama alusta loppuun ja lopusta alkuun luettuna. Tehtävänä on laskea, kuinka monta erilaista palindromia annettu merkkijono sisältää. Esimerkiksi merkkijonossa ABBAABB on 7 erilaista palindromia: A, B, AA, BB, ABBA, BAAB ja BBAABB. Syötteen ainoalla rivillä on merkkijono, josta palindromeja etsitään. Merkkijono muodostuu merkeistä A...Z ja siinä on korkeintaan 100 merkkiä. Ohjelman tulee tulostaa yksi kokonaisluku: kuinka monta erilaista palindromia annettu merkkijono sisältää. ABBAABB 7 ZZZZZZ 6 ABABABABABABAB 14 Esimerkki 4 SAIPPUAKAUPPIAS 14

C Puuttuva alijono DNA-ketju muodostuu merkeistä A, C, G ja T. Ketjun alijono saadaan valitsemalla ketjusta joukko merkkejä niiden järjestys säilyttäen. Esimerkiksi ketju GTGA on ketjun GGACTAGAACT alijono, joka saadaan esimerkiksi valitsemalla ketjun 1., 5., 7. ja 9. merkki: GGACTAGAACT. Tehtävänä on etsiä lyhin ketju, joka ei ole annetun ketjun alijonona. Esimerkiksi mikä tahansa 1 tai 2 merkin pituinen ketju on ketjun GGACTAGAACT alijonona. Sen sijaan on monia 3 merkin pituisia ketjuja, jotka eivät ole ketjun alijonoja. Tällaisia ovat esimerkiksi CCC ja TCA. Syötteen ainoalla rivillä on DNA-ketju, jonka pituus on korkeintaan miljoona merkkiä. Ohjelman tulee tulostaa yksi kokonaisluku: lyhimmän ketjusta puuttuvan alijonon pituus. GGACTAGAACT 3 ACACACACACACACAC 1 ACGTACGTACGTACGTACGT 6 Esimerkki 4 GTAAACTTCGATAATAGCGCCC 4

D Roomalainen summa Roomalaiset numeromerkit ovat seuraavat: I 1 V 5 X 10 L 50 C 100 D 500 M 1000 Lisäksi luvut 4, 9, 40, 90, 400 ja 900 merkitään IV, IX, XL, XC, CD ja CM. Tehtävänä on laskea annettu yhteenlasku roomalaisilla numeroilla. muodostuu kahdesta rivistä, joista molemmat sisältävät luvun roomalaisilla numeroilla merkittynä. Voit olettaa, että molemmat luvut ovat välillä 1...999. Ohjelman tulee tulostaa yhdelle riville syötteessä annettujen lukujen summa roomalaisilla numeroilla merkittynä. XVI XXXIV L Tässä XVI tarkoittaa lukua 16, XXXIV tarkoittaa lukua 34 ja L tarkoittaa lukua 50. CCCV CDLXXX DCCLXXXV CMXCIX MCMXCVIII CMXCIX

E Salasana Uolevi on unohtanut salasanansa, mutta muistaa siitä joitakin asioita. Tehtävänäsi on laskea, kuinka monta salasanaa Uolevin täytyy kokeilla, jotta hän löytää varmasti oikean. Uolevi muistaa salasanasta seuraavat asiat: salasanan merkkien määrän salasanan jokainen merkki on u, o, l, e, v tai i salasanassa ei ole missään kohtaa kahta vokaalia peräkkäin osan salasanassa olevista merkeistä Syötteen ensimmäisellä rivillä on kokonaisluku n, salasanan pituus. Jokaisessa syötteessä n on välillä 1...100. Syötteen toisella rivillä on kuvaus salasanasta. Uolevin muistamat merkit on merkitty oikeille paikoilleen, ja muissa paikoissa on merkki?. Ohjelman tulee tulostaa yksi kokonaisluku: kuinka monta salasanaa sopii Uolevin muistamaan malliin. Voit olettaa, että tulos on korkeintaan 10 18. 4 12 O??L Tässä tapauksessa mahdolliset salasanat ovat OLEL, OLIL, OLLL, OLOL, OLUL, OLVL, OVEL, OVIL, OVLL, OVOL, OVUL ja OVVL. 10 4224??U????L?E 20 1466015154176????????????????????

F Lukusekoitus Luku n on kirjoitettuna 10-järjestelmässä. Luvun numerot sekoitetaan valitsemalla k kertaa satunnaisesti kaksi vierekkäistä luvussa olevaa numeroa ja vaihtamalla niiden paikat keskenään. Tehtävänä on laskea sekoituksen tuloksena saatavan luvun odotusarvo. Luku n ei sisällä yhtään numeroa 0, eli vaihto-operaatiot eivät vaikuta sen numeroiden määrään. Syötteen ainoalla rivillä on kaksi kokonaislukua, n ja k. Luku n on välillä 10...10 13 ja luku k on välillä 1...100. Ohjelman tulee tulostaa yksi kokonaisluku: sekoituksen tuloksena saatavan luvun odotusarvo. Vastauksen on oltava oikea vähintään kolmen merkitsevän numeron tarkkuudella. 123 1 172.5000 Tässä vaihtoja tehdään yksi, joten lopputulos on joko 213 tai 132. Odotusarvo on näiden lukujen keskiarvo (213+132)/2. 1234 2 1799.0000 527 10 518.0088 Esimerkki 4 9217782 50 5687838.0482