2 solutions
-
1
#include<bits/stdc++.h> using namespace std; const int N=100010; int a[N]; int main() { int n,k; scanf("%d%d",&n,&k); for(int i=0;i<n;i++) { scanf("%d",&a[i]); } while(k--) { int l=0,r=n-1; int x; scanf("%d",&x); while(l<r) { int mid=l+r>>1; if(a[mid]>=x) r=mid; else l=mid+1; } if(a[l]!=x) { printf("-1 -1\n"); continue; } printf("%d ",l); l=0,r=n-1; while(l<r) { int mid=l+r+1>>1; if(a[mid]<=x) l=mid; else r=mid-1; } printf("%d\n",l); } return 0; }
-
-1
- 1
Information
- ID
- 141
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 3
- Tags
- (None)
- # Submissions
- 77
- Accepted
- 25
- Uploaded By