:

PAT乙级题目--支票面额

7-19 支票面额 (15 分)
 

一个采购员去银行兑换一张y元f分的支票,结果出纳员错给了f元y分。采购员用去了n分之后才发觉有错,于是清点了余额尚有2元2分,问该支票面额是多少?

输入格式:

输入在一行中给出小于100的正整数n。

输出格式:

在一行中按格式y.f输出该支票的原始面额。如果无解,则输出No Solution

 

输入样例1:

23
 

输出样例1:

25.51
 

输入样例2:

22
 

输出样例2:

No Solution

我的代码:

#include<stdio.h>
int main(){
    int y,f,n,k=0,i=0,j=0;
    scanf("%d",&n);
    for(y=0;y<=100;y++){
        for(f=0;f<=100;f++){
            if(n == 98*f-199*y)
                {
                    i=y;j=f;k=1;
                    break;
                }
        }
        if(k==1)
            break;
    }
    if(k==1)
        printf("%d.%d",i,j);
    else
        printf("No Solution");
}

 

注意:最后一个断点:最大有解n,容易出错。关键在
if(n == 98*f-199*y)的代码判断
本题思路简单,使用枚举法实现。
posted @ 2021-03-08 14:56  彦页の庭  阅读(238)  评论(0)    收藏  举报