#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef unsigned long long ull; static const double EPS = 1e-8; static const double PI = 4.0 * atan(1.0); static const double PI2 = 8.0 * atan(1.0); #define REP(i,n) for(int i=0;i<(int)n;++i) #define ALL(c) (c).begin(),(c).end() #define CLEAR(v) memset(v,0,sizeof(v)) #define MP(a,b) make_pair((a),(b)) #define ABS(a) ((a)>0?(a):-(a)) #define FOR(i,s,n) for(int i=s;i<(int)n;++i) #define D10 (10000000000) int main(int argc, char **argv) { int N; cin >> N; ll sum1 = 0, sum2 = 0; bool sumsign = true; REP(i, N) { string A; cin >> A; int j = 0; bool sign = true; if (A[0] == '-') { sign = false; ++j; } ll v1 = 0; for (; j < A.length() && A[j] != '.'; ++j) { v1 *= 10; v1 += A[j] - '0'; } ll v2 = 0; REP(k, 10) { v2 *= 10; v2 += (j + 1 + k < A.size()) ? A[j + 1 + k] - '0' : 0; } if (v1 == 0 && v2 == 0) sign = true; if (sign ^ sumsign) { if (v1 == sum1 && v2 == sum2) { sign = true; sum1 = 0; sum2 = 0; } else if (v1 > sum1 || (v1 == sum1 && v2 > sum2)) { sumsign = sign; sum1 = v1 - sum1; sum2 = v2 - sum2; if (sum2 < 0) { sum2 += D10; sum1 -= 1; } } else { sum1 -= v1; sum2 -= v2; if (sum2 < 0) { sum2 += D10; sum1 -= 1; } } } else { sum1 += v1; sum2 += v2; if (sum2 >= D10) { sum2 -= D10; sum1 += 1; } } } if (!sumsign) cout << "-"; cout << sum1 << "." << setw(10) << setfill('0') << sum2 << endl; return 0; }