Salti spettacolari (ottimizzazioni)

Ciao a tutti,
Ho visto che un po’ di persone sono riusciti a risolvere salti spettacolari in 0 secondi.
Il mio codice ci mette 0.004 secondi per la maggior parte dei testcase, come faccio a velocizzare il programma.
Qualcuno a qualche suggerimento?
Questo è il mio codice:

#include <stdio.h>
#pragma GCC optimize ("O3")
int c,n;
int p;
char buf[14];

int main(){
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);

    c = getchar_unlocked();
    do {
    n = (n << 3) + (n << 1) + (c - '0');
    c = getchar_unlocked();
    } while(c >= '0' && c <= '9');

    n= __builtin_popcount(n);

    if(!n) buf[p++]=0;
    for(;n;n/=10) buf[p++]=n%10;
    while(p--) putchar_unlocked(buf[p]+48);

    return 0;
}

Essendo la differenza così poca potrebbe anche trattarsi di momenti in cui il server è più o meno indaffarato. Magari rimandando tante volte lo stesso codice da 0.004 alla fine ottieni 0.

La domanda è perché? :joy:

1 Mi Piace