[hgoi#2019/2/16t1]math

题目描述

[hgoi#2019/2/16t1]math

解法

我们稍微枚举一下前面几位,可以得到这样的规律。
\[X_i=\frac{1}{2^{i+1}-1}\]
\[Y_i=\frac{1}{2^{2^i}-1}\]
那么要使\(xm=yn\)那么就是\(m+1=2^n\),答案就是\(2^n-1\)。
对于这个位数,答案就是\(n*log2\)。
这道题沃做的时候,被浮点误差坑到了,所以在输出运算的时候还是要强制转换。

Ac代码

#include<bits/stdc++.h>
#define LL long long
#define dd double
using namespace std;
LL n;
int main(){
    cin>>n;
    if(n<32) {LL ans=(1<<n)-1;cout<<ans<<endl;}
    else{dd x=log(2)/log(10);printf("%d\n",(int)((n*1.0)*x));}
    return 0;
}
上一篇:js函数表达式和函数声明的区别


下一篇:javascript中函数声明和函数表达式浅析