All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > General > Word Problems
Five from Three (Posted on 2009-02-05) Difficulty: 4 of 5
There are 13 3-letter words listed below. For each of them, insert two letters between any one pair of letters in the word or at the end of the word (but not at the beginning), to form a 5-letter word. The two added letters must be adjacent to each other in the 5-letter word.

When complete, all 26 letters of the alphabet will have been used as fill-ins.

ant          dim          see
ass          eel          tie
bay          far          top
coy          mar          win
pie

What if the two letters were allowed at the beginning of the word? Try to find a few like that.

  Submitted by Charlie    
Rating: 5.0000 (2 votes)
Solution: (Hide)
anGSt aBYss baWDy coMFy dENim eXPel faKIr maJOr piQUe seRVe tiTLe topAZ winCH

Final challenge:
CHant aBYss baWDy coMFy dENim eXPel faKIr maJOr piQUe seRVe tiTLe topAZ winGS
PLant aBYss baWDy coMFy dENim eXCel faKIr maJOr piQUe seRVe tiTHe topAZ winGS

DECLARE SUB place (n!)
DATA ant,ass,bay,coy,dim,eel,far,mar,pie,see,tie,top,win
DIM w3$(13)
FOR i = 1 TO 13
   READ w3$(i): PRINT w3$(i)
NEXT

DIM SHARED sWord$(13, 30), sLet$(13, 30), wCt(13), had(26), h$(13), h2$(13)

w5$ = SPACE$(5)
FOR i = 1 TO 13
  OPEN "\\words\\words5.txt" FOR BINARY AS #1
  w$ = w3$(i)
  DO
   GET #1, , w5$
   IF LEFT$(w5$, 1) = LEFT$(w$, 1) AND RIGHT$(w5$, 2) = RIGHT$(w$, 2) THEN
     PRINT w5$, MID$(w5$, 2, 2)
     wCt(i) = wCt(i) + 1
     sWord$(i, wCt(i)) = w5$: sLet$(i, wCt(i)) = MID$(w5$, 2, 2)
   END IF
   IF LEFT$(w5$, 2) = LEFT$(w$, 2) AND RIGHT$(w5$, 1) = RIGHT$(w$, 1) THEN
     PRINT w5$, MID$(w5$, 3, 2)
     wCt(i) = wCt(i) + 1
     sWord$(i, wCt(i)) = w5$: sLet$(i, wCt(i)) = MID$(w5$, 3, 2)
   END IF
   IF LEFT$(w5$, 3) = LEFT$(w$, 3) THEN
     PRINT w5$, MID$(w5$, 4, 2)
     wCt(i) = wCt(i) + 1
     sWord$(i, wCt(i)) = w5$: sLet$(i, wCt(i)) = MID$(w5$, 4, 2)
   END IF
  LOOP UNTIL EOF(1)
  CLOSE 1
  PRINT
  'DO: LOOP UNTIL INKEY$ > ""
NEXT


place 1

SUB place (n)
 FOR i = 1 TO wCt(n)
  l$ = sLet$(n, i)
  n1 = INSTR("abcdefghijklmnopqrstuvwxyz", LEFT$(l$, 1))
  n2 = INSTR("abcdefghijklmnopqrstuvwxyz", RIGHT$(l$, 1))
  IF had(n1) = 0 AND had(n2) = 0 AND n1 <> n2 THEN
    had(n1) = 1: had(n2) = 1
    h$(n) = sWord$(n, i): h2$(n) = sLet$(n, i)
    IF n = 13 THEN
      FOR j = 1 TO 13
        ix = INSTR(h$(j), h2$(j))
        FOR k = 1 TO 5
         IF k = ix OR k = ix + 1 THEN
           PRINT UCASE$(MID$(h$(j), k, 1));
         ELSE
           PRINT MID$(h$(j), k, 1);
         END IF
        NEXT k
        PRINT " ";
      NEXT
      PRINT
    ELSE
      place n + 1
    END IF
    had(n1) = 0: had(n2) = 0
  END IF
 NEXT
END SUB

Adapted from Giant Book of Mensa Mind Challenges, edited by Todd Johnson, "Nearly Impossible Brain Bafflers" chapter, page 177: puzzle #28.

Comments: ( You must be logged in to post comments.)
  Subject Author Date
Solutiona solution where the letter pair is permitted at the beginning of the wordDej Mar2009-02-09 12:10:25
re: Lots of trial & error - resorting to computer helpDej Mar2009-02-05 23:32:00
SolutionLots of trial & error - resorting to computer helpSing4TheDay2009-02-05 18:45:21
Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


Search:
Search body:
Forums (1)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (16)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Chatterbox:
Copyright © 2002 - 2024 by Animus Pactum Consulting. All rights reserved. Privacy Information