메모장 입니다2

C++] Codility - BinaryGap 본문

Study/Programming

C++] Codility - BinaryGap

Wooum@n 2017. 8. 12. 21:03

//엄청 큰 값이 입력될 경우 0을 리턴한다네.. 이유가...

//80점


// you can use includes, for example:

// #include <algorithm>


// you can write to stdout for debugging purposes, e.g.

// cout << "this is a debug message" << endl;


int solution(int N) {

    // write your code in C++14 (g++ 6.2.0)

    int max = 0;

    int count =0 ;

    int flag= 0;

    N=N*2;

    

    while(N>0)

    {

        if((N % 2) == 1)

        {

            if(flag == 0) 

                flag=1;

            else

            {

                if(max<count)

                    max=count;

                count=0;

            }

        }

        else

        {

            if(flag == 1)

            {

                count++;

                cout<<"count:"<<count<<endl;

                cout<<"N:"<<N<<endl;

            }

        }

        N=N>>1;

    }

    

    return max;

}