PKU 1650

来源:互联网 发布:电脑上电视直播软件 编辑:程序博客网 时间:2024/06/07 22:32

这一道题,看似简单,但是,着实,做出来,需要一些时间.或许,这一种虽然有思路,但实际编出程序很难得题,是最让人难受的一种类型题.

就花费的时间来说,不低于,一道回溯的应用题目.

#include<iostream>#include<math.h>#include<fstream>using namespace std;int num1,num2;int exac=1e-9;int main(){//freopen("data_1650.txt","r",stdin);int N=1,L,D=1,j,NN,DD;double A,jue,juemin=10000;while(cin>>A>>L&&A&&L){while(N<L&&D<L){juemin=1000;jue=fabs(A-(double)N/D);if(jue<exac) //必须另外设两个DD,LL,用来存储结果 {NN=N;DD=D;break;}if(jue<juemin)//这条,简单的if()判断语句必不可少 {NN=N;DD=D;juemin=jue;}if(A>(double)N/D) N++;else D++;}cout<<NN<<" "<<DD<<endl;}return 0;}


0 0
原创粉丝点击