http://acm.nuaa.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1138
分析:这是一个求解发生概率的问题。为了问题描述的方面,假设x表示猴子到来的时间为x,猴子摘香蕉的时间为a,小女孩到来的时间为y,小女孩采蘑菇的时间为b。
能够得到以下式子:
可以看出这是一个线性规划的问题,得到如下图示:
也就是求如上图中,阴影部分在60*60的面积中所占的比率值。
示例代码如下:
1 #include <iostream> 2 #include <iomanip> 3 using namespace std; 4 5 void main() 6 { 7 int a,b; 8 while(cin>>a>>b && a*b!=0) 9 { 10 a = 60-a; 11 b = 60-b; 12 cout << setiosflags(ios::fixed); 13 cout << setprecision(4) << (1-(a*a+b*b)/7200.0) << endl; // 因为setprecision只显示有效位数,当要输出固定位数时,要配合setiosflags函数使用 14 } 15 }