Ranking (as of 2014-09-10): 137 out of 609
Language: C++
/* UVa 545 - Heads To build using Visual Studio 2012: cl -EHsc -O2 UVa_545_Heads.cpp */ #include <cstdio> #include <cmath> const int n_max = 9000; struct probability { double x_; int y_; } probabilities[n_max + 1]; int main() { const double eps = 1.0e-9; // without this value, the verdict was WA. int n, y = 0; double x = 1.0; probabilities[0].x_ = x; probabilities[0].y_ = y; for (n = 1; n <= n_max; n++) { x /= 2.0; if (x < 1.0) { x *= 10.0; y++; } probabilities[n].x_ = x; probabilities[n].y_ = y; } int r; scanf("%d", &r); while (r--) { int n; scanf("%d", &n); printf("2^-%d = %.3lfE-%d\n", n, probabilities[n].x_ + eps, probabilities[n].y_); } return 0; }
No comments:
Post a Comment