Traditionally after the Local Contest, judges and contestants go to their favourite restaurant, Alfredos Pizza Restaurant. The contestants are really hungry after trying hard for five hours. To get their pizza as quickly as possible, they just decided to order one big pizza for all instead of several small ones. They wonder whether it is possible to put the big rectangular pizza on the surface of the round table such that it does not overhang the border of the table. Write a program that helps them!
Input
The input file contains several test cases. Each test case starts with an integer number r, the radius of the surface of the round table the contestants are sitting at. Input is terminated by r=0. Otherwise, 1 ≤ r ≤ 1000. Then follow 2 integer numbers w and l specifying the width and the length of the pizza, 1 ≤ w ≤ l ≤ 1000.
Output
Output for each test case whether the ordered pizza will fit on the table or not. Adhere to the format shown in the sample output. A pizza which just touches the border of the table without intersecting it is considered fitting on the table, see example 3 for clarification.
Sample Input
38 40 60 35 20 70 50 60 80 0
Sample Output
Pizza 1 fits on the table. Pizza 2 does not fit on the table. Pizza 3 fits on the table.
#include<iostream>
using namespace std;
int main(){
int r,a,b;
int cas=1;
while(cin>>r&&r){
cout<<"Pizza "<<cas++;
cin>>a>>b;
if(4*r*r-a*a<b*b) {
cout<<" does not fit on the table."<<endl;
}
else cout<<" fits on the table."<<endl;
}
return 0;
}

这篇博客讨论了一个有趣的问题:如何判断一个矩形比萨能否平放在一个圆形餐桌上而不超出边缘。文章提供了一个程序,该程序接受圆桌半径和比萨尺寸作为输入,通过比较比萨的面积与圆桌面积来确定比萨是否能放下。如果比萨的对角线平方小于等于圆桌面积,则比萨可以放在桌子上。示例输入和输出展示了不同情况下的结果。
188

被折叠的 条评论
为什么被折叠?



