Pagini recente » Cod sursa (job #381324) | Cod sursa (job #963095) | Cod sursa (job #897055) | Cod sursa (job #138657) | Cod sursa (job #89067)
Cod sursa(job #89067)
#include<iostream.h>
#include<fstream.h>
#include<values.h>
//using namespace std;
long n,k,a[50],b[4],c[4];
int baza=MAXINT;
void citire(){
ifstream fin("secventa.in");
fin>>n>>k;
for(int i=0;i<n;i++)
fin>>a[i];
fin.close();
}
void aflare(int &baza){
int baz=MAXINT;
b[0]=a[0];
b[1]=a[k-1];
for(int i=0;i<k;i++)
if(a[i]<baz)
baz=a[i];
c[0]=0;
c[1]=k-1;
int u=i+1;
while(a[u]>baz){
u++;
c[1]=u;
b[1]=a[u];
}
baza=baz;
for(int o=k;o<=n-k;o++){
baz=MAXINT;
int x=0;
for(int l=o;x<k;x++){
if(a[l]<baz){
baz=a[l];
b[2]=a[l];
c[2]=l;
}
b[3]=a[l];
c[3]=l; cout<<baz<<" ";
l++;
}
while(a[l]>baz){
b[3]=a[l];
c[3]=l;
l++;
}
if(baz>baza){
baza=baz;
b[0]=b[2];
b[1]=b[3];
c[0]=c[2];
c[1]=c[3];
}
if(baz==baza && c[1]<c[3]){
b[0]=b[2];
b[1]=b[3];
c[0]=c[2];
c[1]=c[3];
}
}
}
void afisare(){
ofstream fout("secventa.out");
fout<<c[0]+1<<" "<<c[1]+1<<" "<<baza;
fout.close();
}
void main(){
citire();
aflare(baza);
afisare();
}