1081 - 在披萨店里的思考

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 32 MB

今天小明来到一家披萨店吃披萨,由于实在太饿了,他决定点一个超大的披萨。不过这家店很奇怪,制作的披萨都是矩形的。于是爱思考的小明想知道这个披萨能否完全放置于自己所在的圆桌之内,也就是披萨是否一定会有部分悬空于桌边之外。请你编程帮他解决。

题目输入

输入包含多组测试数据。每组输入数据一开始为一个整数r(1<=r<=1000),表示圆桌面的半径,当r=0时,输入结束。
随后输入两个整数w和l,分别表示披萨的宽和长。(1<=w<=l<=1000)

题目输出

对于每组输入,输出披萨是否可以完全放在圆桌内。具体输出格式见所给的输出样例。
如果一个披萨刚刚与桌边相碰,那么属于可以完全放在圆桌内的。

输入/输出样例

输入格式

38 40 60
35 20 70
50 60 80
0

输出格式

Pizza 1 fits on the table.
Pizza 2 does not fit on the table.
Pizza 3 fits on the table.

C语言解答

#include<stdio.h>
#include<math.h>

int main()
{
    int r,w,l,n=0;
    while(scanf("%d",&r)!=EOF,r)
    {
        scanf("%d%d",&w,&l);
        if(r*2>=sqrt(w*w+l*l))
            printf("Pizza %d fits on the table.\n",++n);
        else
            printf("Pizza %d does not fit on the table.\n",++n);
    }
    return 0;
}

C++解答

#include<stdio.h>
#include<math.h>

int main()
{
    int r,w,l,n=0;
    while(scanf("%d",&r)!=EOF,r)
    {
        scanf("%d%d",&w,&l);
        if(r*2>=sqrt(w*w+l*l))
            printf("Pizza %d fits on the table.\n",++n);
        else
            printf("Pizza %d does not fit on the table.\n",++n);
    }
    return 0;
}

Java解答

import java.util.*;

public class Main{
    public static void main(String[] args){
    Scanner in = new Scanner(System.in);
    int i = 0;
    while(in.hasNextInt()){
        i++;
        int r = in.nextInt();
        if(r==0) break;
        int w = in.nextInt();
        int l = in.nextInt();
        int W = (int)Math.pow(w,2);
        int L = (int)Math.pow(l,2);
        int R = (int)Math.pow(2*r,2);
        if(W+L<=R)
            System.out.println("Pizza "+i+" fits on the table.");
        else
            System.out.println("Pizza "+i+" does not fit on the table.");
    }
}
}