| Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 69241 | 殷震博 | 二进制小数转十进制 | C++ | Accepted | 1 MS | 276 KB | 323 | 2024-03-31 12:03:18 |
#include<bits/stdc++.h> using namespace std; int main() { string s; cin>>s; double w=1,ans=0; int pos=s.find('.'); for(int i=pos-1;i>=0;i--){ if(s[i]=='1'){ ans+=w; } w*=2; } w=0.5; for(int i=pos+1;i<s.size();i++){ if(s[i]=='1'){ ans+=w; } w /= 2; } cout<<ans; return 0; }