记录编号 249048 评测结果 AAAAAAAAAA
题目名称 [HEOI 2015]定价 最终得分 100
用户昵称 Gravatar神利·代目 是否通过 通过
代码语言 C++ 运行时间 0.004 s
提交时间 2016-04-11 21:05:51 内存使用 0.29 MiB
显示代码纯文本
#include<stdio.h>
int n,l,r,A[10]={1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000};
inline int work(){
	int tip=l,wei=0,ans=0;
	for(;tip;tip/=10,++wei);
	//if(l==A[wei-1]*5)return l;
	if(l<=A[wei-1]*5&&A[wei-1]*5<=r)return A[wei-1]*5;
	if(wei!=9&&A[wei]*5<=r)return A[wei]*5;
	for(int i=1;i<wei;++i)if(l%A[i]){
		tip=(l/A[i]+1)*A[i];
		if(tip<=r)l=tip;
		else{
			if(l%A[i]<=A[i]>>1&&l/A[i]*A[i]+A[i]/2<=r)
				return l/A[i]*A[i]+A[i]/2;
			return l;
		}
	}
	return l;
}
int main(){
	freopen("absurd.in","r",stdin);
	freopen("absurd.out","w",stdout);
	for(scanf("%d",&n);n--;printf("%d\n",work()))
	    scanf("%d%d",&l,&r);
	//while(1);
}