Pagini recente » Cod sursa (job #1535338) | Cod sursa (job #1416158) | Cod sursa (job #2870603) | Cod sursa (job #543903) | Cod sursa (job #2430987)
#include <bits/stdc++.h>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
const int NMAX = 100005;
int v[NMAX];
long long int n,k,suma,t;
int main(){
int i;
f >> n >> k;
t = 0;
while(suma < k){
t++;
suma += t;
}
if(k == 0){
for(i = 1 ; i <= n ; i++)
g << i << " ";
}else
if(suma == k){
for(i = 1 ; i <= n - t - 1 ; i++)
g << i << " ";
long long int cn = n;
for(i = n - t ; i <= n ; i++){
g << cn << " ";
cn--;
}
}else{
suma -= t;
long long int dif = k - suma;
for(i = 1 ; i < n - t ; i++)
v[i] = i;
int cnt = n - t;
for(int i = n; i > n - t; i--){
if(n - i != dif){
v[i] = cnt;
cnt++;
} else {
v[n - t] = cnt;
cnt++;
v[i] = cnt;
cnt++;
}
}
for(i = 1 ; i <= n ; i++)
g << v[i] << " ";
}
return 0;
}