Run ID:110561

提交时间:2025-02-22 12:10:20

#include<bits/stdc++.h> using namespace std; string s; int xsd = -1; int a[32]; 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 == -1) { 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=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=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; }