Cod sursa(job #1008437)

Utilizator RyuchetvalPopescu Valentin Ryuchetval Data 10 octombrie 2013 23:21:30
Problema Statistici de ordine Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 1.02 kb
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    ifstream IN("sdo.in");
    ofstream OUT("sdo.out");
    unsigned int n,k,k2=0;
    IN>>n>>k;
    int *p = new int[n];
    for (int i = 0;i<n;i++)
        IN>>*(p+i);

	int min,pos_interchange;
	while (n > 0)
            {
                min = *p;
                pos_interchange = 0;
                for (int i = 0; i < n; i++)
                {
                    int nr = p[i];
                    if (nr < min)
                    {
                        min = nr;
                        pos_interchange = i;
                    }
                }
                k2++;
                if (k2 == k)
                {
                    OUT<<min;
                    break;
                }
                //if (max != *p)

                    p[pos_interchange] = p[n - 1];
                    p[n - 1] = min;

                n--;
            }
            IN.close();
            OUT.close();
    return 0;
}