3 条题解

  • 1
    @ 2025-4-26 21:22:01

    1000分,拿走

    #include<bits/stdc++.h>
    using namespace std;
    const int N=1e5+10;
    const int INF=0x3f3f3f3f;
    #define LL long long
    #define ull unsigned long long
    int n,m,a[N],ub[114514];
    'int main(){
    	int anser[594088],sum;
    	cin>>n>>m;
    	for(int i=1;i<=n;i++){
    		cin>>a[i];
    	}
    	for(int i=1;i<=m;i++){
    		cin>>ub[i];
    		int l=1,r=n;
    		sum=0;	
    	while(l<=r){
    		int mid=(l+r)/2;
    		if(a[mid]==ub[i])'{
    			sum=mid;
    			r=mid-1;
    		}
    		else if(a[mid]>ub[i]){
    			r=mid-1;
    		}
    		else{
    			l=mid+1;
    		}
    	}
    		if(sum){
    			anser[i]=sum;
    		}
    		else{
    			anser[i]=-1;
    		}
    	}
    	for(int i=1;i<=m;i++){
    		cout<<anser[i]<<endl;
    	}	
    	return 1;
    }                            '   
    
    #include<bits/stdc++.h>
    using namespace std;
    const int N=1e5+10;
    const int INF=0x3f3f3f3f;
    #define LL long long
    #define ull unsigned long long
    int n,m,a[N],ub[114514];
    int main(){
    	int ans[594088],sum;
    	cin>>n>>m;
    	for(int i=1;i<=n;i++){
    		cin>>a[i];
    	}
    	for(int i=1;i<=m;i++){
    		cin>>ub[i];
    		int l=1,r=n;
    		sum=0;	
    	while(l<=r){
    		int mid=(l+r)/2;
    		if(a[mid]==ub[i]){
    			sum=mid;
    			r=mid-1;
    		}
    		else if(a[mid]>ub[i]){
    			r=mid-1;
    		}
    		else{
    			l=mid+1;
    		}
    	}
    		if(sum){
    			ans[i]=sum;
    		}
    		else{
    			ans[i]=-1;
    		}
    	}
    	for(int i=1;i<=m;i++){
    		cout<<ans[i]<<endl;
    	}	
    	return 0;
    }
    点赞收藏!!!!                               
    

    阿妈特拉斯

    • @ 2025-4-26 21:33:15

      不长不短会变成都不会补充蛋白和传播 嘻嘻嘻

信息

ID
3098
时间
1000ms
内存
256MiB
难度
2
标签
递交数
83
已通过
16
上传者