#include #include #include #include #include #define REP(i, n) for (ll i = 0; i < n; i++) #define REP1(i, n) for (ll i = 1; i <= n; i++) #define RREP(i, n) for (ll i = n - 1; i >= 0; i--) #define RREP1(i, n) for (ll i = n; i >= 1; i--) #define FOR(i, a, b, c) for (ll i = a; i <= b; i += c) #define RFOR(i, a, b, c) for (ll i = a; i >= b; i -= c) #define MAX(a, b) (a > b ? a : b) #define MIN(a, b) (a < b ? a : b) #define SORT(t, a, n) qsort(a, n, sizeof(t), ({ int _f (const void *_a, const void *_b) { return *(t *)_a - *(t *)_b; } _f; })) #define RSORT(t, a, n) qsort(a, n, sizeof(t), ({ int _f (const void *_a, const void *_b) { return *(t *)_b - *(t *)_a; } _f; })) #define SUM(a, n) ({ ll _s = 0; REP(_i, n) _s += a[_i]; _s; }) #define CNT(x, a, n) ({ ll _c = 0; REP(_i, n) if (a[_i] == x) _c++; _c; }) #define MAXM(t, a, n) ({ t _m = a[0]; REP(_i, n) _m = MAX(_m, a[_i]); _m; }) #define MINM(t, a, n) ({ t _m = a[0]; REP(_i, n) _m = MIN(_m, a[_i]); _m; }) #define INF 1145141919 typedef long long ll; int main() { int n; scanf("%d", &n); ll sum = 0; while (n--) { char a[24]; scanf("%s", a); int len = strlen(a); if (!CNT('.', a, len)) { a[len] = '.'; a[len + 1] = '\0'; len++; } bool afterp = false; int cntafterp = 0; REP(i, len + 1) { if (cntafterp == 10) break; if (afterp) { if (a[i] == '\0') { a[i] = '0'; a[i + 1] = '\0'; len++; } cntafterp++; } if (a[i] == '.') afterp = true; } ll tmpsum = 0; int rank = 0; RREP(i, len) { if (i == 0 && a[i] == '-') { tmpsum *= -1; break; } if (a[i] != '.') { tmpsum += (a[i] - '0') * (ll)pow(10, rank); rank++; } } sum += tmpsum; } ll sumbeforep = sum / 10000000000; ll sumafterp = sum - sumbeforep * 10000000000; if (sumafterp < 0) sumafterp *= -1; printf("%lld.%010lld\n", sumbeforep, sumafterp); return 0; }