- Your program can be in any programming language.
- Your program should not take any input.
- Your program should transform the word "RELATIVE" into "STATIC". The word can at any stage only consist of uppercase letters A-Z.
- Your program can only use 8 different operations.
- The length, in number of letters, of the word cannot exceed 10 letters. If letters moves beyond that limit the letters will be deleted.
- Your program must use all 8 operations before it can start reusing the operations again. All operations must be used the same amount of times.
- The word must be "STATIC" at the end of the last chunk of 8 operations.
- The very first OP used in the first chunk of OPs is never executed, so the program must output word "RELATIVE" of the first row.
- The lines should be outputted in chunks of 8 lines, separated by a double linefeed between the chunks.
- Your program should output the lines describing how it manipulates the string. Output each iteration of operations, one line for every applied operation in this form:
<iteration # in 6 numbers>: <operation> <current word after OP is executed>
The operations available:
INS Move the current word 1 character to the right and replace first letter with 'A'. DEL Deletes the last letter in the word. INC Increase the second letter from the left with 1. Example: 'A' converts into 'B' or a 'Z' converts into 'A'. If the letter position is outside of the current word, nothing happens. DEC Decrease the fourth letter from the left with 4. Example: 'T' converts into 'P' or a 'C' converts into 'Y'. If the letter position is outside of the current word, nothing happens. SWT Swith letter number three from left with letter number two from right. If any of the letters are outside of current word, nothing happens. INV Invert the current word. JMP Invalidates the nextcoming OP. If this OP is used as OP #8 in a chunk, nothing happens. REP Execute the previous op again. If this OP is used as OP #1 in a chunk, nothing happens.
Example output (incomplete as the word is not "STATIC" at the end of the last chunk of 8 OPs):
000001: REP RELATIVE 000002: DEL RELATIV 000003: INS ARELATIV 000004: INC ASELATIV 000005: SWT ASILATEV 000006: INV VETALISA 000007: JMP VETALISA 000008: DEC VETALISA 000009: DEC VETWLISA 000010: JMP VETWLISA 000011: INS VETWLISA 000012: DEL VETWLIS 000013: REP VETWLI 000014: SWT VELWTI 000015: INC VFLWTI 000016: INV ITWLFV
The scoring is: (Sourcecode size in bytes) * (# OP-chunks). The program with the smallest score wins. The competition ends at 2014-12-31.