Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main()
- {
- int data[100005];
- int counter=0,key;
- int action,j;
- while(1)
- {
- scanf("%d",&action);
- if (action==5)
- {return 0;}
- if (action==1)
- {
- scanf("%d",&key);
- if (counter==0)
- {data[0]=key;}
- else
- {
- for (j=counter-1;j>=0 && data[j]>key;j--)
- {
- data[j+1]=data[j];
- }
- data[j+1]=key;
- }
- counter++;
- }
- if (action==4)
- {
- for (j=0;j<counter;j++)
- {
- printf("%d ",data[j]);
- }
- printf("\n");
- }
- if (action==2)
- {
- fflush(stdin);
- scanf("%d",&key);
- for (j=0;j<counter;j++)
- {
- printf ("%d: %d\n",j,data[j]);
- if(data[j]==key)
- {
- printf("found %d\n", key);
- //findtime=0;
- break;
- }
- /*if (data[j]!=key && j==counter-1)
- {
- printf ("%d not found!!",key);
- findtime=0;
- }*/
- }
- }
- if (action==3)
- {
- fflush(stdin);
- scanf("%d",&key);
- int low=0,high=counter,mid;
- while(low<=high)
- {
- mid=(low+high)/2;
- printf ("%d: %d\n",mid,data[mid]);
- if(data[mid]>key)
- {high=mid-1;}
- else if(data[mid]<key)
- {low=mid+1;}
- /*else if (low==high && data[mid]!=key)
- {
- printf ("%d not found!",key);
- findtime=0;
- }*/
- else
- {
- printf("found %d\n", key);
- //findtime=0;
- break;
- }
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement