应该怎么改啊各位 都是TLE
查看原帖
应该怎么改啊各位 都是TLE
1512905
renli0426楼主2025/1/23 19:22

#include<bits/stdc++.h> using namespace std; int n , m , a[1000005]; int find(int x) { int left = 1 , right = n ; while(left < right) { int mid = left + (right - left)/2; if(a[mid] >= x) right = mid; else left = mid - 1; } return -1; } int main () { ios_base::sync_with_stdio(false);cin.tie(nullptr); cout.tie(nullptr); int tmp; cin >> n >> m ; for (int i = 1 ; i <= n ; i++) { cin >> a[i]; } for(int i = 0 ; i < m ;i++) { cin >> tmp; cout << find(tmp) << " "; } return 0 ;

}

#include<bits/stdc++.h>
using namespace std;
int n , m , a[1000005];
int find(int x)
{
	int left = 1 , right = n ;
	while(left < right)
	{
		int mid = left + (right - left)/2;
		if(a[mid] >= x)
			right = mid;
		else
			left = mid - 1;
	}
	return -1;
}
int main ()
{
	ios_base::sync_with_stdio(false);cin.tie(nullptr);
	cout.tie(nullptr);
	int tmp;
	cin >> n >> m ;
	for (int i = 1 ; i <= n ; i++)
	{
		cin >> a[i];
	}
	for(int i = 0 ; i < m ;i++)
	{
		cin >> tmp;
		cout << find(tmp) << " ";
	}
	return 0 ;
	
}
2025/1/23 19:22
加载中...