Pagini recente » Cod sursa (job #40155) | Cod sursa (job #1443895) | Cod sursa (job #1674720) | Cod sursa (job #1938093) | Cod sursa (job #2633681)
#include <bits/stdc++.h>
using namespace std;
ifstream in("nums.in");
ofstream out("nums.out");
struct number
{
string nr;
bool operator <(number other) const
{
if(nr.size()<other.nr.size()) return true;
if(nr.size()>other.nr.size()) return false;
for(int i=0;i<nr.size();++i)
if(nr[i]<other.nr[i]) return true;
else if(nr[i]>other.nr[i]) return false;
return false;
}
bool operator >(number other) const
{
if(nr.size()<other.nr.size()) return false;
if(nr.size()>other.nr.size()) return true;
for(int i=0;i<nr.size();++i)
if(nr[i]<other.nr[i]) return false;
else if(nr[i]>other.nr[i]) return true;
return false;
}
bool operator ==(number other) const
{
return nr==other.nr;
}
};
set<number> s;
int main()
{
int n,tip,k;
number aux;
in>>n;
while(n--)
{
in>>tip;
if(tip==1)
{
in>>aux.nr;
s.insert(aux);
}
else
{
in>>k;
out<<(*(next(s.begin(),k-1))).nr<<'\n';
}
}
return 0;
}