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

Home > General > Word Problems
Present in 6 (Posted on 2007-04-25) Difficulty: 3 of 5
In this grid horizontal and vertical words are symmetrical about the upper left to lower right diagonal.

T R Y
R Y E
Y E S

This grid is to be reformed by replacing all letters in 6 steps having regard to symmetry, changing one letter at a time and using only English words.

While my solution reflects my title at which you might not arrive, can you at least publish a new grid under my rules?

Asides:
1. Show us any 3 x 3 grids which you have composed from a significantly different initial grid and their development.
2. Beginning with a 4 x 4 grid is it possible to arrive at a new grid, same rules, in 10 steps?

NOTE:
Because of the nature of the language - "English words" - is a difficult phrase to define. If a word seems to need justification then please do so; challenges are otherwise likely.

See The Solution Submitted by brianjn    
Rating: 4.3333 (3 votes)

Comments: ( Back to comment list | You must be logged in to post comments.)
re(2): so many ways | Comment 7 of 13 |
(In reply to re: so many ways by brianjn)

Actually, was done via computer program:

DECLARE SUB changeIt ()
DECLARE FUNCTION isWord! (w$)
DIM SHARED hist$(10, 3), w$(3), did(3, 3), howMany, ct

CLS
w$(1) = "try"
w$(2) = "rye"
w$(3) = "yes"

OPEN "wordsq.txt" FOR OUTPUT AS #4

changeIt

PRINT ct

CLOSE

SUB changeIt
  FOR row = 1 TO 3
   FOR col = row TO 3
    IF did(row, col) = 0 THEN
     FOR subs = 1 TO 26
      letr$ = MID$("abcdefghijklmnopqrstuvwxyz", subs, 1)
      h$ = MID$(w$(row), col, 1)
      MID$(w$(row), col, 1) = letr$
      IF row <> col THEN
        MID$(w$(col), row, 1) = letr$
      END IF

      good = 1
      IF letr$ = h$ THEN good = 0
      IF isWord(w$(row)) = 0 THEN
       good = 0
      ELSE
       IF row <> col THEN
        IF isWord(w$(col)) = 0 THEN good = 0
       END IF
      END IF

      IF good THEN
       did(row, col) = 1
       howMany = howMany + 1
       hist$(howMany, 1) = w$(1)
       hist$(howMany, 2) = w$(2)
       hist$(howMany, 3) = w$(3)

       IF howMany = 6 THEN
         FOR i = 1 TO 6
          PRINT hist$(i, 1); "  ";
         NEXT
         PRINT
         FOR i = 1 TO 6
          PRINT hist$(i, 2); "  ";
         NEXT
         PRINT
         FOR i = 1 TO 6
          PRINT hist$(i, 3); "  ";
         NEXT
         PRINT
         PRINT
       
         FOR i = 1 TO 6
          PRINT #4, hist$(i, 1); "  ";
         NEXT
         PRINT #4,
         FOR i = 1 TO 6
          PRINT #4, hist$(i, 2); "  ";
         NEXT
         PRINT #4,
         FOR i = 1 TO 6
          PRINT #4, hist$(i, 3); "  ";
         NEXT
         PRINT #4,
         PRINT #4,
       
         ct = ct + 1
       ELSE
         changeIt
       END IF

       howMany = howMany - 1
       did(row, col) = 0
      END IF

      MID$(w$(row), col, 1) = h$
      IF row <> col THEN
        MID$(w$(col), row, 1) = h$
      END IF
     NEXT subs
    END IF
   NEXT
  NEXT
END SUB

FUNCTION isWord (w$)
  n = LEN(w$)
  IF w$ = "i" THEN isWord = 1: EXIT FUNCTION
  w1$ = SPACE$(n)
  OPEN "\words\comword3.bin" FOR BINARY AS #2
  l = LOF(2) / n
  low = 1: high = l
  DO
    mid = INT((low + high) / 2)
    GET #2, (mid - 1) * n + 1, w1$
    IF w1$ = w$ THEN isWord = 1: CLOSE 2: EXIT FUNCTION
    IF w1$ < w$ THEN low = mid + 1:  ELSE high = mid - 1
  LOOP UNTIL low > high
  isWord = 0
  CLOSE 2
END FUNCTION

and was done yesterday during daylight hours and did not detract from sleep.


  Posted by Charlie on 2007-04-26 09:53:32
Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


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

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