⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1209.cpp

📁 平时acm训练时ac的源代码
💻 CPP
字号:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int com(const void *a,const void *b)
{
	return(*(float*)a-*(float*)b);
}
int sear(float a[],float f,int j,int k,int g)
{
    int i;
	i=(j+k)/2;
	if(f>a[i]&&f<=a[i+1])
		return g-i;
	if(k-j<=1)
	{
		if(f>a[j]&&f<a[k])
			return g-k;
		else if(f>a[k]&&f<a[k+1])
			return g-j;
		else
			return 0;
	}
	if(f<a[i])
		return sear(a,f,j,i,g);
	else
		return sear(a,f,i,k,g);
}
    


void main(){
	float a[100000]={0},b[100000]={0},f;
	int i,del,j,k,d,c,count,sea;
	char str[5]={0},ch;
	i=0;
    while(1)
	{	
	   
		scanf("%s",&str);
		if(strcmp(str,"BID"))
			break;
       
		scanf("%f",&a[i]);
        i++;
	
	}
	k=i+1;
	qsort(a,k,sizeof(float),com);
	d=0;
	j=0;
    while(1)
	{
		scanf("%s",&str);
		if(strcmp(str,"QUIT"))
			break;
		if(strcmp(str,"DEL"))
		{   
			scanf("%f",&b[d]);
			d++;
		    continue;
		}
         
		scanf("%f",&f);scanf("%c",&ch);
		if(scanf("%d",&count)!=0)count=0;
		printf("%d",count);
		sea=sear(a,f,0,k-1,k);
		if(sea>count&&count!=0)
			sea=count;
		j=j+sea;
		c=0;
		for(i=0;i<d;i++)
		{
			if(f<=b[i])
				c++;
		}
		j=j-c;
	}
	printf("%.3f",j*0.01);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -