ZOJ-1057-Undercut

简单题,没难度,一次AC,但是此题的AC率只有23%,原因很无聊,因为很多人没注意到各个答案之间要空 一行,所以PE非常多。。。

CSDN的这个插入代码功能没有C++,只能用C#代替,就是该死的会把换行符/n自动替换成一个空格,害得我还要自己换回来,真是多此一举。

C++ 00:00.00 388K

// C++ 00:00.00 388K
#include < stdio.h >

int  n;
int  aa[ 21 ],bb[ 21 ];


void  solve( int  a,  int  b ,  int   & pa,  int   & pb) // 进来的a必然>=b
{
    
int  dif;
    dif 
=  a  -  b;
    
if (dif > 1 )
    {
        pa 
+=  a; 
    }
    
else   if ( 1 == dif)
    {
        
if ( 2 == &&   1 == b)
        {
            pb 
+=   6 ;
        }
        
else
        {
            pb 
+=  a + b;
        }
    }
}

int  main()
{
//     freopen("1057.txt","r",stdin);
     int  i;
    
int  paa,pbb;
    
bool  flag = 0 ;

    
while (scanf( " %d " , & n) != EOF  &&  n != 0 )
    {
        paa
= 0 ;
        pbb
= 0 ;

        
if ( 0 == flag)
            flag 
=   1 ;
        
else
            printf(
"/n " );

        
for (i = 1 ;i <= n;i ++ )
        {
            scanf(
" %d " , & aa[i]);
        }

        
for (i = 1 ;i <= n;i ++ )
        {
            scanf(
" %d " , & bb[i]);
        }

        
for (i = 1 ;i <= n;i ++ )
        {
            
if (aa[i] >= bb[i])
            {
                solve(aa[i],bb[i],paa,pbb);
            }
            
else
            {
                solve(bb[i],aa[i],pbb,paa);
            }
        }

        printf(
" A has %d points. B has %d points./n " ,paa,pbb);
    }
//     fclose(stdin);
     return   0 ;
}

你可能感兴趣的:(C++,C#)