Pku 2591 Set Definition

Pku 2591 Set Definition

 

#include  < stdio.h >

int  d[ 10000010 ];
int  len =   0 , p =   0 , q =   0 , i =   0 ;

int  main()
{
    d[
0 ] =   1 ;
    
for ( i =   0 ; i <=   10000000 ++ i )
    {
        
if ( d[p] *   2 +   1 ==  d[len] ) p ++ ;
        
if ( d[q] *   3 +   1 ==  d[len] ) q ++ ;
        
        d[
++ len] =  d[p] * 2 <  d[q] *   3 ?  d[p ++ ] *   2 +   1 : d[q ++ ] *   3 +   1 ;
    }
    
    
while ( scanf( " %d " , & p) !=  EOF )
        printf(
" %d\n " , d[p - 1 ] );
    
    
return   0 ;
}

你可能感兴趣的:(Pku 2591 Set Definition)