
 int main(){
   int s=0,i,N=100;
   for(i=1;i<=N;i++)
     s+=2*i-1;
   if(s/(N*N)==1){ 
     for(i=N;i>0;i--)
       s=s-N;
     return s;
     }
   else 
     return 1-N;
   }


// Using normal compilation (gcc 41_optimum.c)
/*
        .intel_syntax noprefix
        .globl     main
main:   push       rbp
        mov        rbp, rsp
        sub        rsp, 12
        mov        DWORD PTR [rbp-12], 0
        mov        DWORD PTR [rbp-4], 100
        mov        DWORD PTR [rbp-8], 1
        jmp        .L2
.L3:    mov        eax, DWORD PTR [rbp-8]
        imul       eax, 2
        sub        eax, 1
        add        DWORD PTR [rbp-12], eax
        add        DWORD PTR [rbp-8], 1
.L2:    mov        eax, DWORD PTR [rbp-8]
        cmp        eax, DWORD PTR [rbp-4]
        jle        .L3
        mov        eax, DWORD PTR [rbp-4]
        imul       eax, eax
        mov        ecx, eax
        mov        eax, DWORD PTR [rbp-12]
        cdq
        idiv       ecx
        cmp        eax, 1
        jne        .L4
        mov        eax, DWORD PTR [rbp-4]
        mov        DWORD PTR [rbp-8], eax
        jmp        .L5
.L6:    mov        eax, DWORD PTR [rbp-4]
        sub        DWORD PTR [rbp-12], eax
        sub        DWORD PTR [rbp-8], 1
.L5:    cmp        DWORD PTR [rbp-8], 0
        jg        .L6
        mov        eax, DWORD PTR [rbp-12]
        jmp        .L7
.L4:    mov        eax, 1
        sub        eax, DWORD PTR [rbp-4]
.L7:    mov        rsp, rbp
        pop        rbp
        ret
*/


// Using optimisation switch of compiler (gcc 41_optimum.c -O2)
/*
        .intel_syntax noprefix
        .globl     main
main:   xor        eax, eax
        ret
*/
