强迫症卖家

Table of Contents

时间限制:

C/C++语言 1秒;其他语言 2秒

内存限制:

C/C++语言 32768K;其他语言 65536K 64bit IO Format %lld

题目描述

小明是个有强迫症的卖家,他手头有10000台设备,他想以他的幸运数D元(D是个浮点数)每台的价格批量卖一些出去,他不在乎能卖出去多少台,只在乎卖出去的每台均价最接近D元,而且他只收整数数额的钱。请你编程计算他应该每次卖出去的台数N,一共售价M。

输入描述

输入一个浮点数D(0 <D <10),精确到小数点后14位,表示小明钟情的价格。

输出描述

输出两个正整数M, N,以空格分割 如果有多种方案均价一样,输出台数最小的那个。

示例1

输入输出示例仅供调试,后台判题数据一般不包含示例

输入

0.50000000000000

输出

1 2

示例2

输入输出示例仅供调试,后台判题数据一般不包含示例

输入

3.14159265358979

输出

355 113

#coding=utf-8
import sys
D = float(sys.stdin.readline().strip())
 
n, m = 1, 1
# 正负无穷  float("inf"), float("-inf")
diff = float('inf')
while m < 100000 and n <= 10000:
    if abs(m/n-D) < diff:
        tmp_m, tmp_n = m, n
        diff = abs(m/n-D)
    if m/n-D > 0:
        n += 1
    elif m/n-D <= 0:
        m += 1
print(tmp_m, tmp_n)