#27751: C++二分搜TLEQQ


d10831523@gapps.fg.tp.edu.tw (廖與僑)

學校 : 臺北市立第一女子高級中學
編號 : 107948
來源 : [211.75.180.175]
最後登入時間 :
2022-10-03 21:31:01
d732. 二分搜尋法 | From: [203.64.52.40] | 發表日期 : 2021-10-28 20:23

#include<bits/stdc++.h>

using namespace std;

#define int long long int

int a[100000]={0};

 

int find(int n,int s){

int j=n,i=0;

while(j>0&&a[i]<s){

while(i+j<n&&a[i+j]<=s)i=j;

j/=2;

}

return (i+1)*(a[i]==s);

}

 

signed main(){

ios::sync_with_stdio(0),cin.tie(0);

int n,k;cin>>n>>k;

for(int i=0;i<n;i++)cin>>a[i];

int s;

while(k--){

cin>>s;

cout<<find(n,s)<<"\n";

}

}

 
ZeroJudge Forum