1 条题解

  • 0
    @ 2025-9-9 23:46:56

    C :

    #include<stdio.h>
    #include<math.h>
    int main()
    {
    	int t,l,d,r,i;
    	scanf("%d",&t);
    	while(t--)
    	{
    		scanf("%d%d%d",&l,&d,&r);
    		if(2*r<=d)
    			printf("impossible\n");
    		else
    		{
    			double len=sqrt(r*r-d*1.0*d/4);
    			for(int j=1;;j++)
    			{
    				if(2*j*len>=l)
    				{
    					printf("%d\n",j);
    					break;
    				}
    				//printf("%lf",len);
    
    			}
    		}
    	}
    	return 0;
    }
    

    C++ :

    #include<algorithm>
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    using namespace std;
    
    int main()
    {
    
        int t;
        scanf("%d\n",&t);
        while(t--)
        {
         double l,d,r;
         scanf("%lf%lf%lf",&l,&d,&r);
         double sum=0,x=sqrt((r*r-d*d/4))*2;
         if(r<=d/2||2*x<=1)
            printf("impossible\n");
         else
            {
                int c=0,i;
                for(i=1;;i++)
                {
                    c++;
                    sum+=x;
                    if(sum>=l)
                        break;
                }
                printf("%d\n",c);
            }
        }
        return 0;
    }
    
    
    • 1

    信息

    ID
    1153
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者