蒟蒻二分求调!
  • 板块学术版
  • 楼主Asher12
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/6/25 16:46
  • 上次更新2023/11/3 12:26:52
查看原帖
蒟蒻二分求调!
836643
Asher12楼主2023/6/25 16:46

原题:SYGZ OJ 查找给定的K

#include <iostream>
#include <algorithm>
using namespace std;
int n;
int a[500010];
int binary_search(int k)
{
	int l=1,r=n;
	while (l<r)
	{
		int mid=l+r>>1;
		if (a[mid]==k)
		{
			r=mid;
		}
		else 
		{
			l=mid+1;
		}
	}
	return l;
}

int main()
{
	int k;
	scanf("%d%d",&n,&k);
	for (int i=1;i<=n;i++)
	{
		scanf("%d",&a[i]);
	}
	int b=binary_search(k);
	if (a[b]==k)
	{
		printf("%d %d",b,a[b]);
	}
	else
	{
		printf("-1");
	}
	return 0;
}

结果:

WA *1

2023/6/25 16:46
加载中...