
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:
Permutations
Fox And Polygon
Yui and Mahjong Set
New Year and Finding Roots
Aztec Catacombs
New Year Permutation
Cow and Treats
Interesting Subarray
The Art of Dealing with ATM
Alyona and a Narrow Fridge
Aroma's Search
PolandBall and Gifts
Permutation Game
Party
Felicity is Coming!
Greenhouse Effect
New Year and the Factorisation Collaboration
Wilbur and Trees
Checking a graph for acyclicity and finding a cycle in $O(M)$
Tom Riddle's Diary
Robots protection
Game with Strings
Table
Valid BFS?
To Hack or not to Hack
Maximum flow - Push-relabel method improved
Network Mask
Road to 1600
Strange Function
Spyke Talks
Minimum spanning tree - Prim's algorithm
Hongcow Draws a Circle