以下の内容はhttps://blog.hamayanhamayan.com/entry/2018/03/27/165334より取得しました。


OOllOll [RUPC2018 Day2 B]

解法

https://onlinejudge.u-aizu.ac.jp/beta/review.html#RitsCamp18Day2/2751392

1が多いほど答えに近いと言える。
そのため、全て1の数の中からN以下の最大数が答えになる。
全て1の数は全てで30個くらいしか無いので、全探索して答え。

int N;
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> N;

    int ans = 1;
    int x = 1, y = 1;
    rep(i, 0, 30) {
        x = x * 2 + 1; y++;
        if (x <= N) ans = y;
    }
    cout << ans << endl;
}



以上の内容はhttps://blog.hamayanhamayan.com/entry/2018/03/27/165334より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14