这是洛谷月赛III的第一题Music,用哈希做的为什么会MLE啊QAQ
#include<iostream>
#include<vector>
#include<cmath>
using namespace std;
int n,x,t;
long long stime = 0;
const int maxn=1e+7 + 3;
vector < vector<int> >v(maxn+1);
int mykey(int wzl){
return abs(wzl%(maxn+1))+1;
}
void h_insert(int a){
int num=mykey(a);
v[num].push_back(a);
}
bool h_find(int a){
int num=mykey(a);
for(int i=0;i<v[num].size();++i){
if(v[num][i]==a){
return true;
}
}
return false;
}
int main(){
std::ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
do{
cin>>x>>t;
if(h_find(x) == false && t > 1){
h_insert(x);
stime += t;
}
}while(--n);
cout<<stime;
return 0;
}
@rzh123 告诉过我long long型的vector内存计算方法是8n + 24那这为什么会MLE呢?求解0rz