Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- int ara[50000];
- int main() {
- int n,i;
- scanf("%d", &n);
- for (i=0; i<n;i++) scanf("%d", &ara[i]);
- int numofquerys;
- scanf("%d", &numofquerys);
- while (numofquerys--) {
- int q;
- int ans1=1;
- int start, end, current;
- scanf("%d", &q);
- if (q <= ara[0]) {
- ans1 = -1;
- }
- else {
- start = 0;
- end = n-1;
- current;
- while (start<=end) {
- current = start + (end-start)/2;
- if (ara[current] > q) {
- end = current-1;
- }
- else if (ara[current] < q) {
- start = current+1;
- }
- else {
- end = current - 1;
- }
- }
- if (ara[current] >= q) current--;
- }
- if (ans1 < 0) printf("x ");
- else printf("%d ", ara[current]);
- ans1 = 1;
- if (q >= ara[n-1]) {
- ans1 = -1;
- }
- else {
- start = 0;
- end = n-1;
- current;
- while (start<=end) {
- current = start + (end-start)/2;
- if (ara[current] > q) {
- end = current-1;
- }
- else if (ara[current] < q) {
- start = current + 1;
- }
- else {
- start = current + 1;
- }
- }
- if (ara[current] <= q) current++;
- }
- if (ans1 < 0 ) printf("x\n");
- else printf("%d\n", ara[current]);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment