Run ID:73816
提交时间:2024-05-19 17:47:40
#include <bits/stdc++.h> using namespace std; int main () { string s; cin >> s; int l = s.size(); int d = -1; for(int i = 0; i < l; i++) { if(s[i] == '.') { d = i; break; } } double sum = 0; if(d == -1) { int a[l]; int j = 0; for(int i = l-1; i >= 0; i--) { a[j] = s[i] - '0'; j++; } for(int i = 0; i < l; i++) { sum += pow(2,i) * a[i]; } cout << sum; return 0; } else { int a[d]; int j = 0; for(int i = d-1; i >= 0; i--) { a[j] = s[i] - '0'; j++; } for(int i = 0; i < d; i++) { sum += pow(2,i) * a[i]; } int k = 1; for(int i = d + 1; i < l; i++) { sum += pow(2,-k) * (s[i]-'0'); k++; } cout << sum; } return 0; }