Submission details
Task:Lukujono
Sender:NicholasAhman
Submission time:2025-11-19 20:58:06 +0200
Language:text
Status:READY
Result:19
Feedback
groupverdictscore
#1ACCEPTED19
Test results
testverdicttimescore
#1ACCEPTED0.00 s19details

Code

# --- 1. SETUP CONSTANTS ---
# Create number 1  ( O )  and Loop Limit (M = 512).
INCREASE O

# Build M = 512 using powers of 2
INCREASE M
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 
REPEAT M TIMES  ( INCREASE M ) 

# F is our "Run" flag. 1 = Run, 0 = Stop.
CLEAR F
INCREASE F

# --- 2. MAIN LOOP ---
REPEAT M TIMES  ( 
    
    # --- STEP A: PRINT ---
    REPEAT F TIMES  ( 
        PRINT X
     ) 

    # --- STEP B: CALCULATION & STOP CHECK ---
    # We combine Division and Stop Logic to save ops.
    REPEAT F TIMES  ( 
        
        # 1. Copy X to Y
        CLEAR Y
        REPEAT X TIMES  ( INCREASE Y ) 

        # 2. Division  ( X / 2 ) 
        # Q = Quotient, R = Remainder, E = Even Flag
        CLEAR Q
        CLEAR R
        CLEAR E
        INCREASE E

        # Loop Y times  ( Cost: ~9 ops per X ) 
        REPEAT Y TIMES  ( 
            # If R=1, we complete a pair, so Q++
            REPEAT R TIMES  ( INCREASE Q ) 

            # Swap R and E  ( Toggle Logic ) 
            CLEAR T
            REPEAT R TIMES  ( INCREASE T ) 
            CLEAR R
            REPEAT E TIMES  ( INCREASE R ) 
            CLEAR E
            REPEAT T TIMES  ( INCREASE E ) 
         ) 

        # 3. Check if Done  ( Optimization ) 
        # If Q is 0, it means X was 1. We must Stop  ( F=0 ) .
        # If Q > 0, X was >= 2. We Continue  ( F=1 ) .
        
        # Reset F to 0.
        CLEAR F
        
        # If Q > 0, Set F back to 1.
        # If Q == 0, this loop skips, F stays 0.
        REPEAT Q TIMES  ( 
            CLEAR F
            INCREASE F
         ) 

        # 4. Update X
        # Only run if F is still 1  ( i.e., X was not 1 ) 
        REPEAT F TIMES  ( 
            CLEAR X
            
            # Even Case: X = Q
            REPEAT E TIMES  ( 
                REPEAT Q TIMES  ( INCREASE X ) 
             ) 
            
            # Odd Case: X = 3Y + 1
            REPEAT R TIMES  ( 
                REPEAT Y TIMES  ( 
                    INCREASE X
                    INCREASE X
                    INCREASE X
                 ) 
                INCREASE X
             ) 
         ) 
     ) 
 ) 

Test details

Test 1 (public)

Verdict: ACCEPTED

input
(empty)

correct output
(empty)

user output
# --- 1. SETUP CONSTANTS ---
# Create number 1  ( O )  and ...

Feedback: 192 tests processed (command limit exceeded)