比赛 EYOI与SBOI开学欢乐赛10th 评测结果 AAAAAAAAAA
题目名称 数字对数 最终得分 100
用户昵称 yrtiop 运行时间 1.008 s
代码语言 C++ 内存使用 5.74 MiB
提交时间 2022-10-10 19:44:25
显示代码纯文本
#include <bits/stdc++.h>

int lg(int x) {
	int cnt = 0;
	for(;x;x /= 10)++ cnt;
	return cnt;
}

const int maxn = 205;
int n,ans;

void work() {
	ans = 0;
	std::multiset<int> s,t;
	scanf("%d",&n);
	
	for(int i = 1;i <= n;++ i) {
		int x;
		scanf("%d",&x);
		s.emplace(x);
	}
	
	for(int i = 1;i <= n;++ i) {
		int x;
		scanf("%d",&x);
		if(s.find(x) != s.end()) {
			s.erase(s.find(x));
		}
		else t.emplace(x);
	}
	
	std::multiset<int> G;
	for(auto& v : s) {
		if(v > 9)G.emplace(lg(v)),++ ans;
		else G.emplace(v);
	}
	
	s = G;
	G.clear();
	
	for(auto& v : t) {
		int x = v;
		if(x > 9) {
			++ ans;
			x = lg(x);
		}
		if(s.find(x) != s.end()) {
			s.erase(s.find(x));
		}
		else G.emplace(x);
	}
	
	t = G;
	
	for(auto& v : s)ans += v != 1;
	for(auto& v : t)ans += v != 1;
	
	printf("%d\n",ans);
	return ;
}

int main() {
	freopen("numlg.in","r",stdin);
	freopen("numlg.out","w",stdout);
	int T;
	scanf("%d",&T);
	while(T --)work();
	return 0;
}