Run ID:149201

提交时间:2026-03-07 19:31:20

#include<bits/stdc++.h> using namespace std; string s; double sum;int p; void xjz(int o,double i){ if(o==s.size())return; sum+=(s[s.size()-o+p+1]-'0')*i; xjz(o+1,i/2.0); } void jz(int o,int i){ if(o==s.size())return; if(s[o]=='.'){xjz(o+1,0.5);return;} sum+=(s[p-o]-'0')*i; jz(o+1,i*2); } int main(){ cin>>s; for(int i=0;i<s.size();i++)if(s[i]=='.'){p=i-1;break;} //jz(0,1); double po=1; for(int k=p;k>=0;k--){sum+=(po*(s[k]-'0')); po*=2; }po=0.5; for(int k=p+2;k<s.size();k++){ sum+=(po*(s[k]-'0')); po/=2; } /*int l=s.size(); for(int i=0,j=l-1;i<l&&i>=0;i++,j--)sum+=(s[j]-'0')*pow(2,i);*/ cout<<sum<<"\n"; return 0; }