Pagini recente » Cod sursa (job #2166396) | Cod sursa (job #543547) | Cod sursa (job #344807) | Cod sursa (job #802611) | Cod sursa (job #1013994)
#include <iostream>
#include <fstream>
#define a 500005
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
int nou[a],cnt[11],v[a],n,kapa;
void Reset();
void Modify();
void Read();
void Write();
void Construct(int pz);
void Lerizare(int pz);
void Copy();
int main()
{
Read();
for(int j=0,pz=1;j<11;j++,pz*=10)
{
Reset();
Construct(pz);
Modify();
Lerizare(pz);
Copy();
}
Write();
return 0;
}
void Read()
{
f>>n>>kapa;
for(int i=0;i<n;i++) f>>v[i];
}
void Write()
{
//for(int i=0;i<n;i++) g<<v[i]<<' ';
g<<v[kapa-1];
f.close();
g.close();
}
void Reset()
{
for(int i=0;i<=11;i++) cnt[i]=0;
}
void Construct(int pz)
{
for(int i=0;i<n;i++)
cnt[(v[i]/pz)%10+1]++;
}
void Modify()
{
for(int i=1;i<=11;i++) cnt[i]+=cnt[i-1];
}
void Lerizare(int pz)
{
for(int i=0;i<n;i++)
{
cnt[(v[i]/pz)%10]++;
nou[cnt[(v[i]/pz)%10]-1]=v[i];
}
}
void Copy()
{
for(int i=0;i<n;i++) v[i]=nou[i];
}