彩票问题求解(赣州市NOIP2006选拔赛试题)
来源:互联网 发布:ubuntu 自动休眠 编辑:程序博客网 时间:2024/06/08 18:16
/*
某地发行一套彩票。彩票上写有1到M这M个自然数。彩民可以在这M个数中任意选取N个不同的数打圈。每个彩民只能买一张彩票,不同的彩民的彩票上的选择不同。
每次抽奖将抽出两个自然数X和Y。如果某人拿到的彩票上,所选N个自然数的倒数和,恰好等于X/Y,则他将获得一个纪念品。
已知抽奖结果X和Y。现在的问题是,必须准备多少纪念品,才能保证支付所有获奖者的奖品。
输入输出要求
输入文件有且仅有一行,就是用空格分开的四个整数N,M,X,Y。
输出文件有且仅有一行,即所需准备的纪念品数量。
1≤X, Y≤100,1≤N≤10,1≤M≤50。
输入数据保证输出结果不超过105。
输入输出样例
Money.in Money.out
2 4 3 4 1
*/
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
#define MAX 101
long total = 0 ;
int m,n,x,y ;
int flag[MAX] = {0} ;
int save[MAX] = {0} ;
int gcd(int a,int b)
{
if ( b == 0)
return a ;
else
return gcd(b,a%b) ;
}
int is_same()
{
int fz=0,fm=0 ;
int i,j,k,maxk,temp;
maxk = gcd(save[1],save[2]) ;
fm = (save[1]*save[2])/maxk ;
fz = save[1]/maxk + save[2]/maxk ;
save[2] = fm ;
for(i=3; i<= n ; i++)
{
maxk = gcd(save[i-1],save[i]);
fm = (save[i-1]*save[i])/maxk ;
fz = fz*(save[i-1]/maxk)+save[i]/maxk ;
save[i] = fm ;
}
if(fz == x && fm == y)
return 1 ;
else
return 0 ;
}
void find (int num)
{
int i,j ;
if ( num > n)
{
if(is_same())
{
total++ ;
}
test ++ ;
}
else
{
for(i=1 ; i<= m ; i++)
if ( !flag[i] && i > save[num-1])
{
flag[i] = 1 ;
save[num] = i ;
find (num+1);
flag[i] = 0 ;
save[num] = 0 ;
}
}
}
int main(void)
{
int max,h;
scanf("%d %d %d %d",&n,&m,&x,&y);
max = gcd(x,y) ; /*检查它是否为最简式*/
if ( max > 1) /*化为最简式*/
{
x /= max ;
y /= max ;
}
if ( n == 1) /*如果n为1直接处理*/
{
if ( x == 1)
{
for(h=1 ; h<= m ; h++)
if ( y == h)
total ++ ;
}
}
else
{
find (1);
}
printf("%ld ",total);
return 0 ;
}
- 彩票问题求解(赣州市NOIP2006选拔赛试题)
- c ++ 基础三位数彩票的求解问题
- NOIP 提高组 初赛 三、问题求解 习题集(三)NOIP2006-NOIP2009
- 概率试题---概率求解问题
- NOIP2006
- 第五届“蓝桥杯”全国软件校内选拔赛试题(Java组)1、素数问题
- 彩票优选号码问题
- 彩票问题陷阱
- 彩票问题(随机数)
- 彩票问题总结
- 暑假选拔赛01 ---- 数字问题
- 13年蓝桥杯校内选拔赛B组试题
- SQL语句面试题求解——学生分数问题
- 求解twitter面试题(墙壁装水问题)
- 动态规划求解抛鸡蛋问题(Google某年面试题)
- 赣州市人民医院好
- 彩票问题(lottery drawing)
- 彩票问题(n保m)
- 做Ghost版系统盘
- hibernate配制文件一(配置文件中映射元素详解 )
- 在Fedora 5上安装zhcon-0.2.3
- Web日志部署与管理
- hibernate配制文件二(组件应用的方法)
- 彩票问题求解(赣州市NOIP2006选拔赛试题)
- 闻名业界的Sniffer网络管理解决方案
- 号称迄今为止最好用的彩票走势图大全!
- Access数据库的内容直接导入到Excel
- ssh应用及sudo命令的使用
- VIM学习笔记
- hibernate配制文件三(Hiebernate.cfg.xml)
- Everyday Study___MS Agent
- JSP和JSF合并 共同打造完美的Web应用-2