pascal的一道题。CD.

来源:百度知道 编辑:UC知道 时间:2024/06/05 10:01:09
CD签售
【问题描述】
在Q迷的千呼万唤之下,N+Q终于推出了新专辑《My Cow Life》.其中一首《God is a cow》更是天籁之音,令Q迷们为之倾倒。可是,让Q迷们不爽的是,这张专辑是限量发行的,并且价格…….许多Q迷们在音像店前排起了长队,想要买到一张CD或者磁带。SGaPb小店的店长SGaPb是个热心人。他看到这么多Q迷想要买专辑,就设计了一个小游戏——抽奖。
规则是这样的:每位Q迷可以抽到一张奖券。奖券上写有1到M这M个自然数。Q迷可以在这M个数中任意选取N个不同的数打圈。每个Q迷只能买一张奖券,不同的奖券上的选择不同。每次抽奖将抽出两个自然数X和Y。如果某人拿到的奖券上,所选N个自然数的倒数和,恰好等于X/Y,则他将免费获得一张CD《My Cow Life》。 现在,已知抽奖结果X和Y。作为N+Q的fans,你的任务是:求出必须准备多少CD,才能保证支付所有获奖者。且对于同一种选数, SGaPb只用支付一盘CD。
【输入文件】
输入有且仅有一行,就是用空格分开的四个整数N,M,X,Y。
【输出文件】
输出有且仅有一行,即所需准备的CD数量。
【样例输入】
2 4 3 4
【样例输出】
1
【数据规模】
对于30%的数据,1<=N<=M<=15
对于60%的数据,1<=N<=M<=20
对于100%的数据,1<=N<=M<=25,X<=25,Y<=25

深搜,对于每次可能出现的选择结果都算一次,数据量是可以承受的
比较恶心的是那个X/Y
也就是说,在算的时候比如1/2+1/3+1/5=(3*5+2*5+2*3)/(2*3*5),不要去约分
最后再来看当前结果是否满足X,Y<=25