Не могу понять, почему возникает TIME_LIMIT_EXCEEDED на 10 тесте 161A - Оденьте их скорее!. Вот код:
#include <iostream>
using namespace std;
int main(){
long long mas=1000000;
long long n,m,x,y, want[mas], kevlar[mas], otv[mas],otv2[mas];
cin>>n>>m>>x>>y;
long long count=0;
for(long long i=0;i<n;i++)
cin>>want[i];
for(long long i=0;i<m;i++)
cin>>kevlar[i];
for(long long i=0;i<n;i++)
for(long long k=0;k<m;k++)
if(kevlar[k]>=want[i]-x and kevlar[k]<=want[i]+y and kevlar[k]!=0){
otv[count]=i+1;
otv2[count]=k+1;
count++;
kevlar[k]=0;
break;
}
cout<<count<<endl;
for(long long i=0;i<count;i++)
cout<<otv[i]<<' '<<otv2[i]<<endl;
}
Ну может потому что сложность O(n*m)?
Можно попробовать заменить cin/cout на scanf/printf.
Но это не поможет.
Твой ответ очень сочетается с твоим аватаром, в стиле Advice Dog (lurkmore)
Повеселил твой ответ :)