Putkaposti korttikierrot

Tehtävä https://www.ohjelmointiputka.net/postit/tehtava.php?tunnus=korkie

Olen varmaan kymmeniä kertoja latjannut tuon ensimmäisen tapauksen 4, [1, 2] (ihan konkreettisilla korteilla ja koodilla) ja ei vaan käy järkeen miksi vastaus ei ole 3.

Lähdetään järjestyksestä [1, 2, 3, 4] (sillähän ei ole väliä mitä korteissa lukee, merkataan nyt että tuo on järjestys, ni on selkeämpää).
Kun lajittelu tehdään kerran, minä saan, että tulee
[4, 1, 3, 2]
ja toisen kerran, niin
[2, 4, 3, 1]
kolmannen
[1, 2, 3, 4]

Eli saan ratkaisuksi 3. Mutta se on putkapostin mukaan väärin. Oikea vastaus on 2 (testailin ja se hyväksyi 2:n). Mitä minä teen väärin?

19

174

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Vaikea sanoa. En edes ymmärrä tehtävää. Oletko kysynyt tehtävän laatijalta?

    • Anonyymi

      4 1 2 tarkoittanee siis neljää korttia, yksi pino ja kaksi korttia/pino.

      Kortit 1-2-3-4 menee luonnollisesti yhteen pinoon ensin 4-3 ja koska muita pinoja ei olekaan niin samaan pinoon 2-1.

      4-3-2-1 menee toisessa jaossa taas käänteisesti ensin 1-2 ja koska muita pinoja ei olekaan niin samaan pinoon 3-4.

      On siis palattu alkupisteeseen kahden jaon jälkeen.

      Kysyjällä taisi olla neljä korttia, jotka jaettiin kahteen pinoon niin että ekaan pinoon yksi kortti ja toiseen pinoon kaksikorttia minkä jälkeen taas ekaan pinoon viimeinen.

      • Anonyymi

        Eikös tuo ole yhden jaon tapaus, ei 2, eikä 3, vaan 1

        Missä, ne oikeat vastaukset on?

        T. Urpo


      • Joo, niinhän se menee! Pitäs lukee ne tehtävät tarkemmin. Kiitos.


    • Anonyymi

      Aloitin tämän näköisellä tekeleellä: https://s5.gifyu.com/images/Paate_028.png

      Tuohan ei tee muuta kuin yhteen vedon yhdestä tehtävästä. Seuraavaksi kai pitäisi ratkaista eri pinoihin korttien lajittelu. Mutta kuinka sen nyt saa sellaiseksi, että toimii vielä kun vaihtaa seuraavaan tehtävään.

      Muut tehtävät on tuossa REMmattu risuaidalla (#) alussa, ja vain yksi on otettu käsittelyyn. Tuon kuvan tuottaa tämä https://pastebin.com/C3Hst91s

      Luultavasti moderointi poistaa tämän, joten tulosta PDF jotta linkit säilyy toimivana, mikäli tarvetta.

      T. Urpo

      • Siellä ei ole oikeita vastauksia näkyvillä, vaan omat lähetetään ja sivusto testaa menikö oikein.

        Mä saan, että ensimmäisen lajittelun jälkeen kortit tuossa tapauksessa on

        [52, 51, 34, 33, 16, 15, 50, 49, 48, 47, 46, 45, 44, 32, 31, 30, 29, 28, 27, 26, 14, 13, 12, 11, 10, 9, 8, 43, 42, 41, 25, 24, 23, 7, 6, 5, 40, 39, 38, 37, 36, 35, 22, 21, 20, 19, 18, 17, 4, 3, 2, 1]

        kun siis lähdetään range(1, 53):sta.

        Jos joku haluaa vinkkiä ratkaisemiseksi, niin: crezhgnngvba xregnyhxh.


      • Anonyymi
        minkkilaukku kirjoitti:

        Siellä ei ole oikeita vastauksia näkyvillä, vaan omat lähetetään ja sivusto testaa menikö oikein.

        Mä saan, että ensimmäisen lajittelun jälkeen kortit tuossa tapauksessa on

        [52, 51, 34, 33, 16, 15, 50, 49, 48, 47, 46, 45, 44, 32, 31, 30, 29, 28, 27, 26, 14, 13, 12, 11, 10, 9, 8, 43, 42, 41, 25, 24, 23, 7, 6, 5, 40, 39, 38, 37, 36, 35, 22, 21, 20, 19, 18, 17, 4, 3, 2, 1]

        kun siis lähdetään range(1, 53):sta.

        Jos joku haluaa vinkkiä ratkaisemiseksi, niin: crezhgnngvba xregnyhxh.

        Sinä käytit sitä esimerkin kahden kortin sääntöä, mutta eikös tämä mene niin että, siinä on lueteltu, montako kuhunkin pinoon laitetaan, kuten tuossa kuvassakin minulla oli, eikö niin?

        T. Urpo


      • Anonyymi
        Anonyymi kirjoitti:

        Sinä käytit sitä esimerkin kahden kortin sääntöä, mutta eikös tämä mene niin että, siinä on lueteltu, montako kuhunkin pinoon laitetaan, kuten tuossa kuvassakin minulla oli, eikö niin?

        T. Urpo

        Ensimmäinen korttien lajittelu pinoihin, tuotti sisällöltään nämä pinot

        Pinon 4 kortit:
        52, 51, 50, 49, 36, 35, 34, 33, 32, 31, 18, 17, 16, 15, 14, 13

        Pinon 3 kortit:
        48, 47, 46, 30, 29, 28, 12, 11, 10

        Pinon 2 kortit:
        45, 44, 43, 42, 41, 40, 39, 27, 26, 25, 24, 23, 22, 21, 9, 8, 7, 6, 5, 4, 3

        Pinon 1 kortit:
        38, 37, 20, 19, 2, 1

        T. Urpo


      • Anonyymi kirjoitti:

        Sinä käytit sitä esimerkin kahden kortin sääntöä, mutta eikös tämä mene niin että, siinä on lueteltu, montako kuhunkin pinoon laitetaan, kuten tuossa kuvassakin minulla oli, eikö niin?

        T. Urpo

        Kyllä mä "52 4 2 7 3 6":sta käytin mutta tein niin, että kun pakka on aluksi se range(1, 53), ni niitä lähdetään latomaan lopusta päin, eli ensimmäisenä laitetaan kortti 52 ensimmäiseen pinoon jne.

        Sinulla nuo pinot on ilmeisesti siis niin, että viimeinen on alimmainen(?) Kortti 52 on laitettu viimeisenä pinoon 4. Kyllä siitä sama permutaatio taitaa tulla. Kun nuo sinun pinot kootaan, niin siitä tulee pakka

        [1, 2, 19, ..., 52]

        Sinulla kortti k vastaa minun korttia 53-k. Esim. missä sinulla on 19, niin minulla on 34. Mutta samalla tavalla ne kuvautuu uusiin paikkoihin, sinulla paikat vaan luetaan "lopusta" päin. Minä valitsin tuon alusta päin lukemis tavan, koska silloin se on suoraan se tapa millä permutaatio p yleensä esitetään luettemalla alkioiden 1,2,...,n kuvat järjestyksessä p(1), p(2), ..., p(n).


    • Anonyymi

      Miten ihmeessä tuo tehdään? En saa ratkaistua. Millainen permutaatiosysteemi tuon ratkaisee?

      • Kun se permutaatio, johon pakka menee, kun lajittelu on tehty kerran, on saatu selville, täytyy siis enää selvittää kuinka monta kertaa lajittelu pitää toistaa (eli tuolla samaisella permutaatiolla operoida pakkaa) että päädytään alkuperäiseen. Onko permutaation kertaluku tuttu käsite? Se on juuri mitä tuossa kysytään. Tästä: https://en.wikipedia.org/wiki/Permutation#Permutation_order saattaa olla hyötyä. Itse käytin Sagea, jossa haluttu funktio on valmiina, mutta olen kyllä koodannut muistaakseni useampaankin kertaan ne laskemiseen tarvittavat funktiot :D


      • Anonyymi
        minkkilaukku kirjoitti:

        Kun se permutaatio, johon pakka menee, kun lajittelu on tehty kerran, on saatu selville, täytyy siis enää selvittää kuinka monta kertaa lajittelu pitää toistaa (eli tuolla samaisella permutaatiolla operoida pakkaa) että päädytään alkuperäiseen. Onko permutaation kertaluku tuttu käsite? Se on juuri mitä tuossa kysytään. Tästä: https://en.wikipedia.org/wiki/Permutation#Permutation_order saattaa olla hyötyä. Itse käytin Sagea, jossa haluttu funktio on valmiina, mutta olen kyllä koodannut muistaakseni useampaankin kertaan ne laskemiseen tarvittavat funktiot :D

        Joo, on tuttu käsite. Eli pitää tehdä permutaatio, etsiä sen syklit ja laskea niiden lcm. Koodaaminen vaan tuottaa hankaluuksia.



    • Itse taas jumitan tietosanakirja-tehtävän kanssa: https://www.ohjelmointiputka.net/postit/tehtava.php?tunnus=tsk

      Olen kokeillu simuloidun jäähdytyksen tyyppistä algoritmia, mutta se ei hyviä tuloksia tuota (en tiedä onko mulla siinä virhe tai en löydä hyviä parametrien arvoja). Toinen juttu mitä kokeilin on, että paikka mistä jaetaan valitaan yksi paikka kerrallaan ja tässä aina valitaan optimaalisin. Mutta tämä ei (tietenkään) oikeaa optimaalista ratkaisua tuota.

      Oisko kellään tähän mitään vinkkiä antaa?

      • Keksin tietosanakirja-strategian muuten tässä taannoinen päivä. Ihanhan se menee... edullisimman polun etsimisenä, vähän tuunattuna, koska polun pituus pitää olla tasan 15. Tehdään 15 eri tasoa ja siirrytään joka askeleella uudelle tasolle. Lähtö on eka tason eka kirja ja päätepiste on vikan tason vika kirja. Ja kaarten painot on se miten paljon sellaisen kirjan tekeminen tuottaa odotusarvoon (eteen päin vain siis on kaaria joka artikkelista).


    • Anonyymi

      Nykyään Putkaposteissa moderaattorien linja on tiukempi eikä apua saa kysyä. Tulos voidaan hylätä, jos jäät kiinni lunttauksesta.

    Ketjusta on poistettu 2 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Ja taas ammuttu kokkolassa

      Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.
      Kokkola
      30
      3511
    2. Kukka ampu taas Kokkolassa?

      T. olisi hetkeä aiemmin lähtenyt johonkin. Naapuri kai tekijä J.K., ei paljasjalkainen Kokkolalainen, vaan n. 100km pääs
      Kokkola
      9
      1568
    3. Kuinka kauan

      Olet ollut kaivattuusi ihastunut/rakastunut? Tajusitko tunteesi heti, vai syventyivätkö ne hitaasti?
      Ikävä
      113
      1483
    4. Milli-helenalla ongelmia

      Suomen virkavallan kanssa. Eipä ole ihme kun on etsintäkuullutettu jenkkilässäkin. Vähiin käy oleskelupaikat virottarell
      Kotimaiset julkkisjuorut
      224
      1265
    5. Kun näen sinut

      tulen iloiseksi. Tuskin uskallan katsoa sinua, herätät minussa niin paljon tunteita. En tunne sinua hyvin, mutta jotain
      Ikävä
      34
      893
    6. Purra saksii taas. Hän on mielipuuhassaan.

      Nyt hän leikkaa hyvinvointialueiltamme kymmeniä miljoonia. Sotea romutetaan tylysti. Terveydenhoitoamme kurjistetaan. ht
      Maailman menoa
      242
      893
    7. Yhdelle miehelle

      Mä kaipaan sua niin paljon. Miksi sä oot tommonen pösilö?
      Ikävä
      60
      879
    8. Helena Koivu on äiti

      Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.
      Kotimaiset julkkisjuorut
      130
      878
    9. Ja taas kerran hallinto-oikeus että pieleen meni

      Hallinto-oikeus kumosi kunnanhallituksen päätöksen vuokratalojen pääomituksesta. https://sysmad10.oncloudos.com/cgi/DREQ
      Sysmä
      66
      854
    10. Löydänköhän koskaan

      Sunlaista herkkää tunteellista joka jumaloi mua. Tuskin. Siksi harmittaa että asiat meni näin 🥲
      Ikävä
      98
      819
    Aihe