Pagini recente » Cod sursa (job #323633) | Cod sursa (job #2368226) | Cod sursa (job #400936) | Cod sursa (job #2930619) | Cod sursa (job #942011)
Cod sursa(job #942011)
#include<cstdio>
#include<vector>
#define NMAX 100005
FILE *f=fopen("farfurii.in","r");
FILE *g=fopen("farfurii.out","w");
using namespace std;
int n,k,diff;
vector<int> sol;
int ccount;
void Solve ( void )
{
while ( ccount*(ccount-1) /2 < k)
++ccount;
//numarul de perechi in plus
diff=ccount*(ccount-1)/2-k;
for(int i(n) ; i > n-ccount ; --i )
sol.push_back(i);
}
void Write ( void )
{
for(int i (1) ;i <= n- ccount ; ++i )
fprintf(g,"%d ",i);
fprintf(g,"%d ",sol[diff]);
int value=sol[diff];
for(vector<int>::iterator it=sol.begin() ; it != sol.end() ; ++it )
if( *it != value)
fprintf(g,"%d ",*it);
}
int main ( void )
{
fscanf(f,"%d%d",&n,&k);
Solve();
Write();
return 0;
}