
Input
The input contains a single floating-point number x with exactly 6 decimal places (0 < x < 5).
Output
Output two integers separated by a single space. Each integer should be between 1 and 10, inclusive. If several solutions exist, output any of them. Solution will exist for all tests.
Examples
input
1.200000
output
3 2
input
2.572479
output
10 3
input
4.024922
output
9 9
Solution:
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <set>
#include <vector>
#include <map>
#include <cmath>
#include <algorithm>
#include <memory.h>
#include <string>
#include <cstring>
#include <sstream>
#include <cstdlib>
#include <ctime>
#include <cassert>
using namespace std;
int main() {
double x;
scanf("%lf", &x);
double diff = 12345;
int da = -1, db = -1;
for (int a = 1; a <= 10; a++)
for (int b = 1; b <= 10; b++) {
double u = (a * b) / sqrt(4 * a * a + b * b);
u = fabs(u - x);
if (u < diff) {
diff = u;
da = b;
db = a;
}
}
printf("%d %d\n", da, db);
return 0;
}
Related posts:
New Year and Finding Roots
Max and Min
Road Repair in Treeland
New Year and the Sphere Transmission
Dividing Kingdom II
Looksery Party
Robot Sequence
Xenia and Hamming
Race
Alternating Current
New Year Tree
Cunning Gena
Bad Cryptography
Neural Network country
Nastya and Unexpected Guest
Clique in the Divisibility Graph
Minkowski sum of convex polygons
Closest Equals
Mischievous Mess Makers
Fish Weight
Bear and Forgotten Tree 3
Alice and Hairdresser
Degenerate Matrix
Minimum spanning tree - Kruskal with Disjoint Set Union
New Year and Ascent Sequence
New Year Tree Decorations
Ordering T-Shirts
Two-gram
Students Initiation
Reposts
Flows with demands
Finding strongly connected components - Building condensation graph