Submission details
Task:Lukujono
Sender:rottis
Submission time:2025-10-31 20:49:02 +0200
Language:text
Status:READY
Result:54
Feedback
groupverdictscore
#1ACCEPTED54
Test results
testverdicttimescore
#1ACCEPTED0.00 s54details

Code

# Q = 128
# 548 successful iterations

INCREASE Q INCREASE Q INCREASE Q INCREASE Q # 4^3 * 2 = 128
 
#CLEAR S # s <= (x > 0) assume empty
#CLEAR L assume empty
#CLEAR M assume empty
INCREASE M
REPEAT X TIMES (
    REPEAT M TIMES ( REPEAT L TIMES ( CLEAR M INCREASE S ) INCREASE L )
)

PRINT X
REPEAT Q TIMES (
    REPEAT S TIMES ( # skips iterations a lot faster if there are a lot to skip
        REPEAT Q TIMES (
            REPEAT S TIMES (
                REPEAT Q TIMES ( # repeat 4 times 4 times 4 times 2 times: 128 times
                    # if x > 1
                    REPEAT S TIMES (
                    
                        # o: store x / 4
                        CLEAR O
                
                        # a: even
                        # b: odd
                        # c: pass-through
                        INCREASE A
                        
                        # d, e, f: flip-flop number 2
                        INCREASE D
                        #CLEAR C always clear, used as pass-through

                        # AD: % 4 = 0
                        # BD: % 4 = 1
                        # AE: % 4 = 2
                        # BE: % 4 = 3
                        REPEAT X TIMES (
                            REPEAT B TIMES ( INCREASE T )
                            
                            # flip-flop a/b
                            REPEAT A TIMES ( CLEAR A INCREASE B )
                            REPEAT T TIMES ( CLEAR B CLEAR T INCREASE A
                                REPEAT D TIMES ( INCREASE F ) # tmp

                                REPEAT E TIMES ( CLEAR E INCREASE D INCREASE O ) # D-E flip flop
                                REPEAT F TIMES ( CLEAR F CLEAR D INCREASE E )
                            )
                        )
                        #DEBUG A DEBUG B DEBUG C DEBUG D DEBUG E DEBUG F DEBUG X DEBUG O
                
                        REPEAT D TIMES (
                            CLEAR D
                            # x % 4 == 0
                            REPEAT A TIMES (
                                CLEAR A
                                # o is already 0.5x!
                                # x % 4 == 0, we need to print x/2 and store x/4 in O

                                CLEAR X 
                                REPEAT O TIMES ( INCREASE O INCREASE X )
                                PRINT O # x/2 (2o)
                                PRINT X # x/4 (1o)
                                

                                # check x/2 > 1 (for next iteration)
                                CLEAR S # s <= (x > 0)
                                CLEAR L # L is set to 2 after the loop, cannot assume empty
                                #CLEAR M assume empty, if not empty then we shouldnt be inside the loop
                                # Better x > 1 alg!
                                INCREASE M
                                REPEAT X TIMES (
                                    REPEAT M TIMES ( REPEAT L TIMES ( CLEAR M INCREASE S ) INCREASE L )
                                )
                            )
                            
                            # x % 4 == 1
                            REPEAT B TIMES (
                                CLEAR B

                                # x = 12o + 4 = x + (2x+1)
                                REPEAT X TIMES ( INCREASE X INCREASE X )
                                INCREASE X

                                PRINT X

                                CLEAR X

                                # O = 6o + 2; X = 3o + 1
                                REPEAT O TIMES (
                                    INCREASE O INCREASE O INCREASE O INCREASE O INCREASE O 
                                    INCREASE X INCREASE X INCREASE X
                                )
                                INCREASE O INCREASE O
                                INCREASE X
                                
                                PRINT O
                                PRINT X

                                # O != 0?
                                CLEAR S
                                
                                REPEAT O TIMES ( CLEAR S INCREASE S )
                            )

                        )

                        REPEAT E TIMES (
                            CLEAR E
                            # x % 4 == 2
                            REPEAT A TIMES (
                                CLEAR A

                                CLEAR Z # 2o + 1
                                REPEAT O TIMES ( INCREASE Z INCREASE Z )
                                INCREASE Z
                                
                                PRINT Z # 2o + 1


                                # O != 0?
                                CLEAR S

                                REPEAT O TIMES ( CLEAR T CLEAR S INCREASE S )
                                
                                REPEAT S TIMES (
                                    REPEAT Z TIMES ( INCREASE X )
                                    INCREASE X

                                    PRINT X # 6o + 4

                                    CLEAR X

                                    REPEAT O TIMES ( INCREASE X INCREASE X INCREASE X )
                                    INCREASE X INCREASE X

                                    PRINT X # 3o + 2
                                )
                            )

                            # x % 4 == 3
                            REPEAT B TIMES (
                                CLEAR B

                                # Z = 3x+1 = 12o + 10
                                CLEAR Z
                                REPEAT X TIMES ( INCREASE Z INCREASE Z INCREASE Z )
                                INCREASE Z

                                PRINT Z # 3x + 1

                                # X = 3x+1 / 2 = x + 2o + 1
                                REPEAT O TIMES ( INCREASE X INCREASE X )
                                INCREASE X INCREASE X
                                
                                PRINT X # (3x + 1) / 2
                                
                                # Z = 12o + 10 + (6o + 6)
                                REPEAT O TIMES ( INCREASE Z INCREASE Z INCREASE Z INCREASE Z INCREASE Z INCREASE Z )
                                INCREASE Z INCREASE Z INCREASE Z INCREASE Z INCREASE Z INCREASE Z 

                                PRINT Z # 18o + 16

                                # X = 6o + 5 + (3o + 3)
                                REPEAT O TIMES ( INCREASE X INCREASE X INCREASE X )
                                INCREASE X INCREASE X INCREASE X
                                
                                PRINT X # 9o + 8
                            )
                        )
                    )
                ) 
            )
        )
    ) 
)

Test details

Test 1 (public)

Verdict: ACCEPTED

input
(empty)

correct output
(empty)

user output
# Q = 128
# 548 successful iterations

INCREASE Q INCREASE Q INCREASE...

Feedback: 548 tests processed (command limit exceeded)