Pagini recente » Cod sursa (job #2376485) | Cod sursa (job #2628865) | Cod sursa (job #1495027) | Cod sursa (job #1597601) | Cod sursa (job #2623051)
#include <fstream>
#define fisierI "farfurii.in"
#define fisierO "farfurii.out"
#define ll long long
#define create new ll
#define median (n-i)*(n-i-1)/2
std::ifstream in(fisierI);
std::ofstream out(fisierO);
ll k,n;
class vector{
ll *a;
int s;
public:
vector(){
a = create[2];
s = 0;
}
void resize(){
a = create[n];
}
void push(int val){
a[s] = val;
s ++;
}
int operator [](int i){
return a[i];
}
} vec;
void read(){
in >> n >> k;
}
void solve(){
ll i = 1;
while(median>k){
vec.push(i);
i++;
}
ll aux = k-median+i;
vec.push(aux);
for(int j=n;j>aux;j--)
vec.push(j);
for(int j=aux-1;j>=i;j--)
vec.push(j);
}
void afis(){
for (int i = 0; i < n; i ++)
out << vec[i] << " ";
}
int main()
{
read();
vec.resize();
solve();
afis();
return 0;
}