0
金一铭
新手光能
新手光能
我的2771超时10分代码:
#include<iostream>
using namespace std;
int f[100000],a[100000],b[100000],t[100000];
int main()
{
int n1,n2;
cin>>n1>>n2;
for(int i=1;i<=n1;i++)
cin>>a[i];
for(int i=1;i<=n2;i++)
cin>>b[i];
int m=max(n1,n2);
for(int i=1;i<=n1;i++)
{
for(int j=1;j<=n2;j++)
if(a[i]==b[j])
{
t[j]=i;
}
}
for(int i=1;i<=n2;i++)
{
if(t[i]!=0)cout<<t[i]<<endl;
else cout<<-1<<endl;
}
}
我错在哪里?谁来帮我找错?
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
蔡乐毅
高级光能
高级光能
- int l=1,r=n,mid;
- while(l<=r){
- mid=(l+r)/2;
- if(a[mid]<=x) l=mid+1;
- else r=mid-1;
- }
- if(a[l]==x) p=l;
- else if(a[r]==x) p=r;
- else p=0;
- if(p!=0) cout<<p;
- else cout<<-1;
- cout<<endl;
0
0