题目叙述
问题描述:略
输入格式:略
输出格式:略
样例
样例输入
9255
样例输出
10000
新增样例
样例输入
70080
样例输出
100000
满分证明
解题思路
-
判断是在哪个层次,然后解一元一次方程(我是用的笨办法,不会高级的o(╥﹏╥)o)
-
55000/0.55=99999.999999999999
-
注意用math模块的ceil取整
设输入为x,输出为y
以x=9255,y=10000
y=x+45+300+(y-3500-4500)*0.2
y=[x+45+300-(3500+4500)*0.2]/(1-0.2)
满分代码
import math
n = eval(input())
if n <= 3500:
print(n)
elif n <= 3500 + 1500 * 0.97:
print(math.ceil((n +
(- 3500) * 0.03) / (1 - 0.03)))
elif n <= 3500 + 1500 * 0.97 + 3000 * 0.9:
print(math.ceil((n + 1500 * 0.03 +
(- 3500 - 1500) * 0.1) / (1 - 0.1)))
elif n <= 3500 + 1500 * 0.97 + +3000 * 0.9 + 4500 * 0.8:
print(math.ceil((n + 1500 * 0.03 + 3000 * 0.1 +
(- 3500 - 1500 - 3000) * 0.2) / (1 - 0.2)))
elif n <= 3500 + 1500 * 0.97 + +3000 * 0.9 + 4500 * 0.8 + 26000 * 0.75:
print(math.ceil((n + 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 +
(- 3500 - 1500 - 3000 - 4500) * 0.25) / (1 - 0.25)))
elif n <= 3500 + 1500 * 0.97 + +3000 * 0.9 + 4500 * 0.8 + 26000 * 0.75 + 20000 * 0.7:
print(math.ceil((n + 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 +
(- 3500 - 1500 - 3000 - 4500 - 26000) * 0.3) / (1 - 0.3)))
elif n <= 3500 + 1500 * 0.97 + +3000 * 0.9 + 4500 * 0.8 + 26000 * 0.75 + 20000 * 0.7 + 25000 * 0.65:
print(math.ceil((n + 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 + 20000 * 0.3 +
(- 3500 - 1500 - 3000 - 4500 - 26000 - 20000) * 0.35) / (1 - 0.35)))
else:
print(math.ceil((n + 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 + 20000 * 0.3 + 25000 * 0.35 +
(- 3500 - 1500 - 3000 - 4500 - 26000 - 20000 - 25000) * 0.45) / (1 - 0.45)))
需者自取传送门(∩ᄑ_ᄑ)⊃━☆【CCF 2013-2021】本博主整理历年至少前两题 python 满分代码目录