Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Optimizing the code

Name: Anonymous 2010-03-01 8:19

Any ideas on how I could make this program run faster?
It's supposed to run under 0.5 seconds.
In some cases it does, in others it fails.
[b]The task : [/b]

INPUT:
From the first line of the standard input read one integer (5 <= n <= 100000). Each of the following n lines will have one of the following two formats:

- 1 a - meaning that Mirko said aloud the number a, (0 <= a <= 65535).
- 2 k - meaning that Mirko asks what is the kth smallest number he has said so far. k will always be less or equal to the number of numbers Mirko has said aloud so far.

The total number of different number will not be bigger than 400, but some of the numbers can repeat!

OUTPUT:
To the standard output write one line for each of the 2 k inputs. Representing the kth smallest number at that moment.


Input:
7
1 0
1 1
1 5
2 1
2 3
1 2
2 3

Output:
0
5
2

[b]My solution : [/b]

#include <stdio.h>
int main(){
    unsigned short int * a;
        unsigned int n,j,x,y;
    int m=-1;
    scanf("%u",&n);
    a=new unsigned short int[n];
    while (n>0){
        n=n-1;
        scanf("%u %u",&x,&y);
        if (x==1){
            m=m+1;
            j=m;
            a[j]=y;
            while((j>0)&&(a[j]<a[j-1])){
                y=a[j-1];
                a[j-1]=a[j];
                a[j]=y;
                j=j-1;
            }

        }
        else printf("%u\n",a[y-1]);
    }
    delete [] a;
    return 0;
}

Name: sagebot 2010-04-14 18:27

aewgewagewagewg

Name: sagebot 2010-04-14 18:27

wrewrewrwrw

Name: sagebot 2010-04-14 18:27

wqeqwewqewqewqeq

Name: sagebot 2010-04-14 18:27

vvxvxvxvxvxvxv

Name: sagebot 2010-04-14 18:28

errtrtrtrtrt

Name: sagebot 2010-04-14 18:28

dsdsdsdsdsdsdsd

Name: sagebot 2010-04-14 18:28

tytytytytytytyt

Name: sagebot 2010-04-14 18:28

efefefefefefefef

Name: sagebot 2010-04-14 18:28

assadsdasdsd

Name: sagebot 2010-04-14 18:28

xxx

Name: sagebot 2010-04-14 18:28

dssfewfewfewf

Name: sagebot 2010-04-14 18:28

hjhjhjhjhjhj

Name: sagebot 2010-04-14 18:29

gdsgdggegeg

Name: sagebot 2010-04-14 18:29

axsxaxsaxsaxasxsax

Name: sagebot 2010-04-14 18:29

ujukuukukyykyukyuk

Name: sagebot 2010-04-14 18:29

fewfewfewfewfewf

Name: sagebot 2010-04-14 18:29

ewfwfwdeededwd

Name: sagebot 2010-04-14 18:29

oijojoihohij

Name: Anonymous 2010-04-14 18:29

Bumping for a last time before the sagebot accomplishes its holy mission.

Name: sagebot 2010-04-14 18:29

rgregtrgreg

Name: sagebot 2010-04-14 18:29

ukyukyukyukyukyuk

Name: sagebot 2010-04-14 18:29

thrthtrhtrhtrh

Name: sagebot 2010-04-14 18:30

gnfngfngfngfngn

Name: sagebot 2010-04-14 18:30

aewfewrwoirjwr

Name: sagebot 2010-04-14 18:30

ewfewfewf

Name: sagebot 2010-04-14 18:30

yukyukyuk

Name: sagebot 2010-04-14 18:30

ngfnfnfgn

Name: sagebot 2010-04-14 18:30

bcxvcxvcx

Name: sagebot 2010-04-14 18:30

vcxvxcvxcvxcv

Name: sagebot 2010-04-14 18:30

jmj,j,kj,hj,

Name: sagebot 2010-04-14 18:31

ewfewfrewr

Name: sagebot 2010-04-14 18:31

dsdsdsdsds

Name: sagebot 2010-04-14 18:31

hytjyjkyukk

Name: sagebot 2010-04-14 18:31

;olikujh

Name: sagebot 2010-04-14 18:31

dfsdfdsf

Name: sagebot 2010-04-14 18:31

cvxcvcxvxvxvvcx

Name: sagebot 2010-04-14 18:31

xzxxzzxzxz

Name: sagebot 2010-04-14 18:31

kljlililiuliuljljk

Name: sagebot 2010-04-14 18:31

opopopopopo

Name: sagebot 2010-04-14 18:32

feff

Newer Posts