P2249 样例过,全RE,求调
  • 板块学术版
  • 楼主封禁用户
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/12/21 12:04
  • 上次更新2024/12/21 15:41:56
查看原帖
P2249 样例过,全RE,求调
1153760
封禁用户楼主2024/12/21 12:04

原题: https://www.luogu.com.cn/problem/P2249

代码

#include<bits/stdc++.h>
#define ll long long
using namespace std;
int a[100111], b[10011];
ll n, m, ans;
int main() {
	cin >> n >> m;
	for (int i = 1; i <= n; i++) {
		cin >> a[i];
	}
	for (int i = 1; i <= m; i++) {
		cin>>b[i];
	}
	for(int i=1;i<=m;i++){
		int fen=n;
		int jishu=0;
		int j=1;
		while(1){
			fen/=2;
			j++;
			if(b[i]>a[jishu+fen]){
				jishu+=fen;
			}
			if(a[fen]==b[i]){
				cout<<fen<<" ";
				break;
			}
			if(fen==0){
				cout<<-1;
				break;
			}
		}
	}
	return 0;
}

本人第一次做二分的题,样例秒过,0分,全RE jishu是二分加的基数,fen是二分,不知道这么写是否规范

2024/12/21 12:04
加载中...