潮or先辈
题号:NC239803
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

今天是七夕,阿宁打算和潮去约会。

但是潮问阿宁一个题:
有一个整数,一开始是 1,有n次随机变化(等概率),每次变化:乘以2,或者乘以2再加1。问 n 最终值的期望是多少?

比如 时:
1->2
1->3
期望值为

潮看阿宁绞尽脑汁都没想出,于是问了另一个问题,下面cpp片段输出什么?
int main() {
    int n;
    mt19937 rnd(seed);
    cin >> n;
    for (int i = 1; i < n; ++i) {
        rnd();
    }
    cout << rnd() << endl;
    return 0;
}
潮:"如果你两个问题都解决不了,就和先辈约会去吧。"

阿宁数学和程序设计都不行,于是请求你的帮助。

输入描述:

输入一个正整数 n。代表数学题中的变化次数或程序题的输入。

输出描述:

先输出一个整数 op。(你可以选择输出 1 或 2)
如果 op 是 1,代表选择做数学题,然后输出一个数表示期望(保留一位小数)。
如果 op 是 2,代表选择做程序题,然后输出一个数表示程序的输出。
示例1

输入

复制
1

输出

复制
1 2.5

说明

如果选择做程序题,输出1487203017。