Cod sursa(job #1149021)

Utilizator SSJCatalinMicu Catalin SSJCatalin Data 21 martie 2014 13:36:13
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>

using namespace std;

ifstream in("invsort.in");
ofstream out("invsort.out");
int n,v[32010];
int minim(int st, int dr){
    int m=32000,pm,i;
    for(i=st;i<=dr;i++)
    if(v[i]<m){
        m=v[i];
        pm=i;
        }
        return pm;
}
void Swap(int st,int dr){
    int i=st,j=dr,aux;
    while(i<j){
        aux=v[i];
        v[i]=v[j];
        v[j]=aux;
        i++;
        j--;
    }
}
int main(){
    int i;
    in>>n;
    for(i=1;i<=n;i++)in>>v[i];
    for(i=1;i<n;i++){
        int pm=minim(i,n);
        if(i==pm)continue;
        Swap(i,pm);
        out<<i<<" "<<pm<<"\n";
    }
    return 0;
}