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

217

    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. Karhuryhmä

      Kellään tarkempaa tietoa miksi ja missä karhuryhmä ollut? Perheväkivaltaa vai huumeperintää kenties taas?
      Jämsä
      31
      3710
    2. Mitä sä pelkäät

      Ettei tää etene?
      Ikävä
      96
      3343
    3. Raisionkaaren koira hyökkäys

      Taas nähtiin että koiriin ei voi luottaa. Eilen illalla vapaana ollut koira hyökkäsi Raisionkaarella kolmen henkilön kim
      Raisio
      97
      3264
    4. Mitä kaikkea sä

      Olisit valmis tekeen mun eteen vielä? Vai oletko mitään?
      Ikävä
      77
      3118
    5. "Mielipide: Äärivasemmiston uhka on otettava vakavasti"

      Demokratia näyttäisi olevan Halla-aholle enemmänkin välttämätön paha kuin tavoiteltava asia. Väkivallan ihannointi ja m
      Maailman menoa
      68
      3033
    6. Tapa jolla kohtelit minua viimeksi miellytti erityisesti

      Osaat huomioida kauniisti ja katsot aina tilanteita yhteisen hyvän kannalta. Sitä arvostan erityisesti.
      Ikävä
      86
      2775
    7. Ei me saada toisiamme

      Ei vaan saada. On vain haaveita ja uunelmia
      Ikävä
      35
      2550
    8. Mikä on luonteesi parhain ominaisuus

      ja mikä huonoin?
      Ikävä
      69
      2463
    9. Satuit vain olemaan

      Ensimmäinen joka avasi minussa sen nähdyksi ja rakastetuksi tulemisen puolen. Pitäisi vain muistaa että et ole ainoa. Se
      Ikävä
      45
      2382
    10. Vieläkö toivot, että kuulisit

      Minusta? Vai suutuitko kun en pystynyt vastaamaan sinulle?
      Ikävä
      88
      2100
    Aihe