P4305 [JLOI2011]不重复数字


题面

给定 \(n\) 个数,要求把其中重复的去掉,只保留第一次出现的数。

思路

暴力大法好!

STL大法好!

直接使用std::unorded_map维护(哈希表),判断是否出现即可。每组数据的时间复杂度是 \(O(n)\)

代码

需要输入输出优化,否则只有 \(60\) 分。

#include 
using namespace std;

unordered_map rem;
int t;


void solve(){
	rem.clear();
	int n,x;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>x;
		if(rem.count(x)==0){
			cout<>t;
	while(t--){
		solve();
	}
	return 0;
}

AC记录