Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointiputka: Putkaposti 40: Porkkanavartio

Sivun loppuun

Antti Laaksonen [13.05.2010 16:30:12]

#

Tässä tulee uusi putkaposti:

https://www.ohjelmointiputka.net/postit/tehtava.php?tunnus=porvar

Lisätehtävä: Perustele, miksi löytämäsi ratkaisu on optimaalinen.

L2-K2 [13.05.2010 18:51:35]

#

Lisätehtävä:

Engxnvfh ba bcgvznnyvara, xbfxn arywäyyägbvfgn znuqbyyvfryyn "eviv zhhgra fhbwnggh, zhggn" ruqbyyn wägrgääa xbyzrgbvfgn ehhghn inegvbvznggn.
Fll fvvura zvxfv xnvxxvn arywäägbvfgn cbvfgbn rv ibvqn gbgrhggnn ba fr, rggä ivvzrvfraä fhbwnggnin ehhgh ba iäuvagääa frxä innxn- rggä clfglfhbenyyn. Wbf fr byvfv zlöf qvntbannyvyyn byvfv ghybf luqra uhbabzcv. Ryv xnxfvxlzzragäxbyzr ba cnenf znuqbyyvara xbfxn rv byr ehhghwn, wbgxn byvfving inva wbyynva evivyyä gnv fnenxxrryyn, rv zbyrzzvyyn.

Toisaalta tämän voisi viime putkapostia seuraten ratkaista myös raa'alla voimalla inhimillisessä ajassa.

VilleP [17.05.2010 21:04:27]

#

Vaihtoehtoinen ratkaisu lisätehtävään (dekryptata voi vaikka osoitteessa rot13.com):

Gbqvfghf fvyyr, zvxfv 23 ba cvrava znuqbyyvara inegvwbvqra zääeä:

Nwngryynna inegvwn-nfrgryznn 6k6 gnhyhxxban N, wbaxn wbxnvara ehhgh ba neibygnna wbxb gluwä gnv I.

Inegvwn-nfrgryzn N inegvbv xbxb xhxxngneuna, wbf ba byrznffn yvfälfgra xrgwh X wbyyn gnhyhxba N wbxnvara ehhgh fnnqnna nfrgrgghn neibygnna I:xfv. Yvfälf gnexbvggnn zhhaabfgn, wbffn wbaxva eviva/fnenxxrra/qvntbannyva nvabna gluwäa ehhqha neibxfv nfrgrgnna I. Yvfälfgra xrgwh ibvfv byyn invxxn frhennina aäxövara: (Yvfälf evivyyr 4, yvfälf qvntbannyvyyr 2, yvfälf fnenxxrryyr 6).

Uninvagb 1: Wbxnvara eviv/fnenxr/qvntbannyv ibv rfvvaglä xrgwhffn xbexrvagnna xreena, xbfxn yvfälfbcrenngvba nyhffn evivyyä ba bygnin gnfna 5 I:gä, wn yvfälxfra wäyxrra avvgä ba 6.

Gäfgä aäuqääa, rggä xrgwha cvghhf ba ravagääa 14, wn inegvwn-nfrgryzn N rv ibv inugvn xbxb chhgneunn wbf fvvaä ba lyv 14 gluwää ehhghn, 14=6+6+2.

Gbqvfgrgnna alg infgnrfvzrexvyyä, rggä 14 gluwäa ehhqha gncnhf rv byr znuqbyyvara. Byrgrgnna, rggä gnhyhxbffn N ba 14 gluwää ehhghn, wn ba byrznffn yvfälfgra xrgwh X wbxn gälggää fra. Wbxnvara eviv wn fnenxr rfvvagll gäyyöva xrgwhffn X gnfna xreena. Xhgfhgnna eviva v avzvxxbehhqhxfv fvgä ehhghn, wbaxn eviv v gälggää xrgwhffn X. Zhbqbfgrgnna fhhaanggh tennsv T, wbaxn fbyzhvan bing evivg wn fnenxxrrg, wn wbffn evivfgä v zrarr fhhaanggh xnnev fnenxxrrfrra w wbf wn inva wbf eviva v avzvxxbehhgh fvwnvgfrr fnenxxrrffn w. T:ffä ba infgnninfgv xnnerg fnenxrfbyzhvfgn evivfbyzhvuva. Xbfxn wbxnvara ehhgh fvwnvgfrr gnfna luqryyä fnenxxrryyn wn evivyyä, wbxnvfrfgn T:a fbyzhfgn yäugrr gnfna lxfv xnnev hybf. Xnnerg zrariäg nvan wbxb fnenxrfbyzhvfgn evivfbyzhvuva gnv cävainfbva. 12 fbyzhn wn 12 xnnegn -> tennsvffn T ba flxyv. Alg wbf evivfgä v zrarr xnnev fnenxxrrfrra w, fr gnexbvggnn rggä fnenxxrra w yvfälxfra ba rfvvaalggäiä xrgwhffn X raara eviva v yvfälfgä, wn flxyva gncnhxfrffn wbaxha eviva ba rfvvaalggäiä vgfrääa raara. Gäzä ba evfgvevvgn, wbgra rv byr znuqbyyvfgn gälggää 14 gluwää ehhghn.

Wbugbcäägöf, inegvwn-nfrgryznffn N ibv byyn xbexrvagnna 13 gluwää ehhghn wbggn fr ibvfv inegvbvqn xbxb xhxxngneuna. Gncnhf 13 gluwää (ryv 23 inegvwnn) ibvqnna bfbvggnn znuqbyyvfrxfv rfvzrexvyyä.

Jokotai [17.05.2010 23:15:46]

#

Aika porvarillinen tehtävä :)
L2-K2 2/5
VilleP 5/5

L2-K2 [18.05.2010 11:19:29]

#

Jokotai kirjoitti:

Aika porvarillinen tehtävä :)
L2-K2 2/5
VilleP 5/5

Jokotai, sanopa mikä tuossa minun todistuksessani on väärää, eli miksi "2/5". Minun ja VilleP:n todistukset ovat sisällöltään identtiset*. VilleP vain muotoili koko päättelyketjun "matematiikan kielellä".

* molemmissa loogisesti oikea päättelyketju johtaa siihen että tapaus 22 vartijaa on mahdoton, koska tällaisessa tapauksessa kunkin rivin, sarakkeen ja diagonaalin tulisi poistaa tarve yhdelle vartijalle, mikä on mahdotonta. Tapauksen 23 taas osoittaa esimerkki.

PS. suurin osa ongelmista voidaan ratkaista oikein useammalla kuin yhdellä tavalla...

Jokotai [18.05.2010 16:06:39]

#

L2-K2 kirjoitti:

muotoili koko päättelyketjun "matematiikan kielellä"

Syyn sanoit itse. Arvosteluni tuli siitä kuinka hyvin ymmärsin selitykset.

Jaska [18.05.2010 17:14:41]

#

L2-K2 kirjoitti:

Jokotai, sanopa mikä tuossa minun todistuksessani on väärää

Ei tuollaisia arvosteluja kannata ottaa vakavasti. Esimerkiksi kandiohjaajani ei olisi hyväksynyt VilleP:n todistusta, koska siinä on lause aloitettu matemaattisella merkillä. Tärkeintä lienee ymmärtää, mikä on todistuksen idea.

AkeMake [26.05.2010 23:35:58]

#

Jos nyt oikein ymmärsin, niin tähän porkkanamaatehtävään ei kelpaa pelkkä vastaus? Olisihan se ihan ymmärrettävää. Kun yritin lähettää pelkän vastauksen ilman perusteluja niin tuli ilmoitus:
Virhe lähetyksessä:
Vastauksen muoto on väärä!

Miten saan vastaukseni menemään läpi?
Kuinka matemaattisesti tai ohjelmoinnillisesti nämä tehtävät yleensäkin pitää ratkaista? Hyväksytäänkö vastaus, jossa ratkaistaan tehtävä käännetysti. Eli ensin annetaan vartijoiden paikat, jonka jälkeen selitetään miten vartijattomat paikat on suojattu rosvoilta.

Metabolix [26.05.2010 23:52:22]

#

AkeMake: Vastauksen pitää sisältää vartijoiden sijainnit ASCII-kaaviona, kuten tehtävän ohjeissa neuvotaan. (Lue uudelleen otsikon "vastausohje" alta.) Ratkaisuja on useita, mutta mikä tahansa kelpaa. Mitään selityksiä ei tarvita, eihän tietokone pysty niitä tarkistamaankaan. Sen sijaan tietokone pystyy helposti tarkistamaan, että annettu vastaus täyttää ehdot eli porkkanamaa on sääntöjen mukaan vartioitu.

Putkapostit saa ratkaista keinolla millä hyvänsä. Joskus ne voi laskea paperilla, mutta monissa tehtävissä hyvän ohjelman tekeminen on välttämätöntä. Yleensä tehtäviin on olemassa algoritmi, jolla ratkaisun saa laskettua muutamassa sekunnissa, mutta joukossa on myös joitakin, joihin tehokasta ratkaisua ei tunneta.

AkeMake [27.05.2010 00:12:27]

#

Selvä. Hiukan oli hämäävää, sillä tehtävän vastausohjeissa ei puhuta suoraan mitään ASCII:sta. Itseasiassa otsikon "vastausohje" alla lukee:
Vastaukseen tulee kuvaus porkkanamaan vartioinnista.

Tällaiselle ohjelmointitaidottomalle, mutta asiasta jonkin verran kiinnostuneelle, tämä "kuvaus" ei tarkoita ilmiselvästi ASCII-kaaviota. Kun en ohjelmoinnista mitään ymmärrä niin luulin kuvauksen tietysti tarkoittavan sanallista kuvailua asiasta.
Tietysti näin jälkikäteen ajateltuna melko tyhmästi ajateltu, sillä tottakai tällaisella sivulla tehtävän vastaus täytyy olla tietokoneella tarkistettavissa.

Metabolix [27.05.2010 00:20:29]

#

Tehtävänanto kirjoitti:

Merkki V tarkoittaa vahtia ja merkki . tarkoittaa tyhjää ruutua.

Vastaus voisi näyttää seuraavalta:

VVVVVV
VVVVVV
VV.V.V
VVVVVV
VVVVVV
VV.V.V

Minusta asiaa ei voi enää paljon tämän selvemmin ilmaista. Miten muuten tämän voi järkevästi tulkita kuin niin, että vastaukseksi pitää tehdä tuollainen samanlainen kaavio samoilla merkeillä?

AkeMake [27.05.2010 00:29:45]

#

jaha.. Eli olin ymmärtänyt vastausohjeen täysin oikein. Juuri tuollaisena lähetin vastaukseni, mutta tuli herjausta, että vastauksen muoto on väärä.

No jopas.. Tuli juuri sellainen älynväläys, että mitäpä, jos pienellä ja isolla v:llä on merkitystä. Niinpä muutin pienet kirjaimet isoiksi ja vastaushan lähti onnistuneesti.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta