Death Note Problem

                Never    
C++
       
#include<bits/stdc++.h>
using namespace std;

#define max2(a, b) (((a) > (b)) ? (a) : (b))
#define min2(a, b) (((a) > (b)) ? (b) : (a))
#define abs(a) (((a) > 0) ? (a) : (-(a)))
#define max3(a,b,c) max(a,max(b,c))
#define min3(a,b,c) min(a,min(b,c))

const int INF = 0x3f3f3f3f;

typedef long long ll;

int semihelp(int a)
{
    ll two = 1;
    int i = 0;

    while(a > two)
    {
        i++;
        two += pow(2, i);
    }
    return i;
}

int main()
{
    //Death Note Problem
    int in;
    cin>>in;

    int ans;
    ans = semihelp((in / 4) + 1);

    if(in % 4 == 1 || in % 4 == 2)
    {
        ans += 1;
    }
    else if(in % 4 == 3)
    {
        ans += 2;
    }

    cout<<ans<<endl;

    return 0;
}

Raw Text