Find the program that prints this integer sequence (Cops' thread)
Vim, 36 keystrokes -- Safe!

i****&lt;esc&gt;:let @q="^*i****$**@***"&lt;cr&gt;&lt;n&gt;@qbD


(Note: &lt;n&gt; is where you type your input)

Here is the code unrelated to number generation:

          :let @q="              "&lt;cr&gt;&lt;n&gt;@qbD


Meaning I am revealing 5 out of 19 characters.

&lt;n&gt; is the input. Here are some sample outputs:

1@q:    1
2@q:    3
6@q:    18


Answer

This code prints The Lucas Numbers (A000032), which are just like The Fibonnaci Sequence, except that it starts on 2, 1 instead of 1, 1. Here are the first 15 numbers:

2, 1, 3, 4, 7, 11, 18, 29, 47, 76, 123, 199, 322, 521, 843


Here's the revealed code:

i2 1 &lt;esc&gt;:let @q="^diwwyw$pb@-&lt;c-v&gt;&lt;c-a&gt;"&lt;cr&gt;&lt;n&gt;@qbD


Explanation:

i2 1 &lt;esc&gt;                          "Insert the starting numbers
          :let @q="....."&lt;cr&gt;       "Define the macro 'Q'


Explanation of the macro:

^                      "Move to the first non-whitespace character on the line.
 diw                   "(d)elete (i)nner (w)ord. This is different then 'dw' because it doesn't grab the space. 
                      "It also throws people off since 'i' is usually used for inserting text.
    wyw$               "Move to the next number, yank it then move to the end of the line 
        pb             "(p)aste the yanked text and move (b)ack
          @-     &lt;c-a&gt; "@- is the register holding the word we deleted. Increment the current number that many times.
            &lt;c-v&gt;      "Since we're adding &lt;c-a&gt; this from the command line, we need to type it as a literal.


Now, we just need to remove the second number, since the first number is the lucas number we want. So we do

b   "move (b)ack
 D  "(D)elete to the end of the line.


Also, if I'm not mistaken, this is the first safe submission! That's kinda cool.