Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <iomanip>
- #include <cmath>
- using namespace std;
- int small(int A[],int k,int x,int D,int y)
- {
- int e=y;
- int skirt=abs(A[e]-x);
- for(int q=0;q<k;q++)
- if(A[q]<=x+D&&A[q]>=x-D&&abs(A[q]-x)<=skirt)
- {
- if(abs(A[q]-x)<skirt)
- {
- e=q;
- skirt=abs(A[e]-x);
- }
- else if(A[q]<A[e])
- e=q;
- }
- return e;
- }
- int main(){
- ifstream in("svarstykles-vyr.in");
- ofstream out("svarstykles-vyr.out");
- int D,N,k=1,x;
- in>>N>>D;
- int A[N]={ };
- in>>x;
- A[k-1]=x;
- for(int i=0;i<N-1;i++)
- {
- in>>x;
- for(int y=0;y<k;y++)
- {
- if(abs(A[y]-x)<=D)
- {
- A[small(A,k,x,D,y)]=x;
- break;
- }
- else if(k-y==1)
- {
- A[k]=x;
- k++;
- }
- }
- //out<<A[0]<<"\n"<<A[1]<<"\n"<<A[2]<<"\n"<<A[3]<<"\n"<<A[4]<<"\n"<<A[5]<<"\n"<<A[6]<<"\n"<<A[7]<<"\n"<<"\n";
- }
- out<<k;
- return 0;
- }
Add Comment
Please, Sign In to add comment