Run ID:110587
提交时间:2025-02-22 12:50:30
#include<bits/stdc++.h> using namespace std; string s; int xsd=-1; int a[64]; int main() { cin >>s; int n=s.size(); for(int i=0; i<n; i++) { if(s[i]=='.') { xsd=i; break; } } int j=0; if(xsd==-10) { for(int i=n-1; i>=0; i--) { a[j]=s[i]-48; j++; } int ans=0; for(int i=0; i<n; i++) { ans+=pow(2,i)*a[i]; } cout <<ans; } else { for(int i=xsd-1; i>=0; i--) { a[j]=s[i]-48; j++; } } double ans=0; for(int i=0;i<xsd;i++){ ans+=pow(2,i)*a[i]; } for(int i=xsd+1;i<n;i++){ ans+=pow(2,-(i-xsd))*(s[i]-48); } cout <<ans; return 0; }