Cod sursa(job #1014243)

Utilizator Catalina_BrinzaBrinza Catalina Catalina_Brinza Data 22 octombrie 2013 13:08:28
Problema Statistici de ordine Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.06 kb
//
//  main.cpp
//  sdo
//
//  Created by Catalina Brinza on 10/22/13.
//  Copyright (c) 2013 Catalina Brinza. All rights reserved.
//

#include <iostream>
#include  <fstream>
int k,a[3000000];

using namespace std;
    ofstream g("/Users/catalinabrinza/Documents/untitled folder/sdo/sdo.out");

int quicksort(int *a,int f,int n)
{
    int p,j,aux,i;
    if(f<n)
    {
        p=f;
        i=f;
        j=n;
        
        while(i<j){
            while(a[i]<=a[p]&&i<n)
                i++;
            while(a[j]>a[p])
                j--;
            if(i<j){
                aux=a[i];
                a[i]=a[j];
                a[j]=aux;
            }
        }
        
        aux=a[p];
        a[p]=a[j];
        a[j]=aux;
        if (k==j) {g<<a[j]; return 0;}
        else if (k<j) quicksort(a,f,j-1);
        else quicksort (a,j+1,n);
    }
    return 0;
}


int main()
{int n,i;
    ifstream f("/Users/catalinabrinza/Documents/untitled folder/sdo/sdo.in");


    f>>n>>k;
    for (i=0;i<n;i++) f>>a[i];
    quicksort(a,0,n-1);
    f.close();
    g.close();
    return 0;
}