7-19 支票面额【PAT】
题目: 一个采购员去银行兑换一张y元f分的支票,结果出纳员错给了f元y分。采购员用去了n分之后才发觉有错,于是清点了余额尚有2y元2f分,问该支票面额是多少? 输入格式: 输入在一行中给出小于100的正整数n。 输出格式: 在一行中按格式y.f输出该支票的原始面额。如果无解,则输出No Solution。 输入样例1: 23 输出样例1: 25.51 输入样例2: 22 输出样例2: No Solution 思路: 根据题目推导出关系式: f . y − 0. n = f 1. y 1 = 2 y . 2 f = 2 ∗ ( y . f ) f.y-0.n = f1.y1 = 2y.2f = 2*(y.f) f . y − 0 . n = f 1 . y 1 = 2 y . 2 f = 2 ∗ ( y . f ) , 200 ∗ y + 2 ∗ f + n = 100 ∗ f + y 200*y+2*f+n = 100*f+y 2 0 0 ∗ y + 2 ∗ f + n = 1 0 0 ∗ f + y ,化简之后为 98 ∗ f − 199 ∗ y = n 98*f-199*y=n 9 8 ∗ f − 1 9 9 ∗ y = n 。使用for循环根据关系式用if语句判断出条件,如果有就按照格式输出;如果没有输出“No Solution”即可。 AC代码: #