2 条题解

  • 1
    @ 2023-10-16 19:56:28

    C :

    #include <stdio.h>
    #include <stdlib.h>
    int n,k,sa,sb,i,l,r,mid,s;
    #define max(a,b) a>b?a:b
    int a[10010];
    int check(int x)
    {
    	s=0;
    	for(i=1;i<=n;i++)
    		s+=a[i]/x;
    	return s<k;
    }
    int main()
    {
    	scanf("%d %d",&n,&k);
    	r=-1;
    	for(i=1;i<=n;i++)
    	{
    		scanf("%d.%2d",&sa,&sb);
    		a[i]=sa*100+sb;
    		r=max(r,a[i]);
    	}
    	l=1;
    	while(l<=r)
    	{
    		mid=(l+r)>>1;
    		if(check(mid))
    			r=--mid;
    		else
    			l=++mid;
    	}
    	printf("%d.%d%d",(l-1)/100,(l-1)%100/10,(l-1)%10);
    	return 0;
    }
    

    C++ :

    undefined
    

    Pascal :

    undefined
    

    信息

    ID
    754
    时间
    1000ms
    内存
    128MiB
    难度
    2
    标签
    递交数
    84
    已通过
    24
    上传者