Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Infinite String and Letter Puzzle

  1. Jan 12, 2010 #1
    The string abbcccddddeeeee… continuously repeats such that after the final z, the letters abbcccddddeeeee… begin again.

    What will be the 3000th letter in the pattern?
     
    Last edited: Jan 12, 2010
  2. jcsd
  3. Jan 12, 2010 #2
    T
    I think
     
  4. Jan 12, 2010 #3

    LAF

    User Avatar

    I Think it´s:
    R
     
  5. Jan 12, 2010 #4

    DavidSnider

    User Avatar
    Gold Member

    Here's my guess:

    Code (Text):

    var alpha = "abcdefghijklmnopqrstuvwxyz".split("");
    var a = [];
    var i=0;
    var j=0;
    var k=0;

    while(i<=3000) {
        for(j=0;j<k;j++) {
            if(i<3000) {
                a.push(alpha[k-1]);
            }
            i++;
        }
        k++;
        if(k > alpha.length) k = 0;
    }


    a[a.length-1];
     
    t
     
    Last edited: Jan 12, 2010
  6. Jan 13, 2010 #5
    Code (Text):
    #!perl
    for(A..Z) {$s.=$_ x++$i;}
    $t=$s.($s x int(3000/length $s));
    print substr($t,2999,1)."\n";
    Or, more appropriately:

    There are 26 letters in the alphabet, hence the string from the first A to the final Z will be ((1+26)/2)*26 characters long (351 characters). 3000 modulo 351 is 192. Hence, the 3000th character will be the same as the 192nd character. You can find this by finding when N choose 2 is equal to or greater than 192, which happens to be at N=20 (20 choose 2 being 210). And the 20th letter of the alphabet is T.

    And the next question-- what happens if instead, after the final Z, the next A repeats 27 times, then B repeats 28 times and so forth?

    DaveE
     
    Last edited: Jan 13, 2010
  7. Jan 14, 2010 #6
    I used basic math for this.
    x(x+1) = 6000 and x = int -> x^2 < 6000 < x^2 + x ; x= 77. My answer is Y.
     
  8. Jan 16, 2010 #7
    There appears to be something wrong with your basic math.

    26*(26+1)/2 = 351
    3000 / 351 = 8.547...
    3000-351(8) = 192

    192-1-2-3-4...-19 = 2

    So T is the 3000th letter.
     
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook