记录编号 577359 评测结果 AAAAAAAAAA
题目名称 [HEOI 2015]定价 最终得分 100
用户昵称 GravatarHeSn 是否通过 通过
代码语言 C++ 运行时间 0.000 s
提交时间 2022-11-01 19:05:48 内存使用 0.00 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main() {
	freopen("absurd.in", "r", stdin);
	freopen("absurd.out", "w", stdout);
	int n;
	cin >> n;
	for(int i = 1; i <= n; i ++) {
		int l, r;
		cin >> l >> r;
		int minn = 1e12, ans;
		while(l <= r) {
			int x = l, cnt = 0, k, sum = 0;
			while(x % 10 == 0) {
				cnt ++;
				x /= 10;
			} // 找出 l 中不为 0 的最后一位与 l 为 0 的位数个数 
			k = x % 10;
			while(x != 0) { // l 剩下的位数 
				sum ++;
				x /= 10;
			}
			sum *= 2;
			if(k == 5) {
				sum --;
			}
			if(sum < minn) { // 统计最小答案 
				minn = sum;
				ans = l;
			} // 因为 l 在这里递增所以不需要考虑 l 的最小值问题 
			l += pow(10, cnt); // 末位补为 0,次末位 + 1 
		}
		cout << ans << endl;
	}
	return 0;
}