Facebook Hacker Cup 2011 Qualification Round 3

Discussion in 'Rebol' started by MaxV, Jan 13, 2011.

  1. MaxV

    MaxV Member

    Dear Rebels,
    during these days ther is the Facebook Hacker Cup 2011 , and Rebol isn't in the possible programming language admitted. Why don't you show that Rebol is an excellent language? Below there is the third puzzle to solve, try to post you solution.


    Studious Student
    You've been given a list of words to study and memorize. Being a diligent student of language and the arts, you've decided to not study them at all and instead make up pointless games based on them. One game you've come up with is to see how you can concatenate the words to generate the lexicographically lowest possible string.

    Input
    As input for playing this game you will receive a text file containing an integer N, the number of word sets you need to play your game against. This will be followed by N word sets, each starting with an integer M, the number of words in the set, followed by M words. All tokens in the input will be separated by some whitespace and, aside from N and M, will consist entirely of lowercase letters.

    Output
    Your submission should contain the lexicographically shortest strings for each corresponding word set, one per line and in order.

    Constraints
    1 <= N <= 100
    1 <= M <= 9
    1 <= all word lengths <= 10

    Example input
    Code:
    5
    6 facebook hacker cup for studious students
    5 k duz q rc lvraw
    5 mybea zdr yubx xe dyroiy
    5 jibw ji jp bw jibw
    5 uiuy hopji li j dcyi
    
    Example output
    Code:
    cupfacebookforhackerstudentsstudious
    duzklvrawqrc
    dyroiymybeaxeyubxzdr
    bwjibwjibwjijp
    dcyihopjijliuiuy
    Input file
    http://www.maxvessi.net/rebsite/fhc2011/input3.txt
  2. Graham

    Graham Developer Staff Member

    Max, I've got plenty enough of my own programming problems to deal with than take on artificial problems!
  3. Sunanda

    Sunanda New Member

    Thanks for republishing these problems.

    If I've read the spec right, this one is trivial for REBOL:

    Code:
    data: read/lines http://www.maxvessi.net/rebsite/fhc2011/input3.txt
    
    for n 2 1 +  to-integer data/1 1 [
      print rejoin sort parse data/:n none
      ]
  4. Marco

    Marco New Member

    Very similar for me :
    Code:
    foreach x next read/lines http://www.maxvessi.net/rebsite/fhc2011/input3.txt [
        print rejoin sort next parse x none
    ]
    

Share This Page