Pagini recente » Cod sursa (job #1278076) | Cod sursa (job #123750) | Cod sursa (job #1259093) | Monitorul de evaluare | Cod sursa (job #1507390)
#include <fstream>
using namespace std;
ifstream in( "farfurii.in" );
ofstream out( "farfurii.out" );
int main( )
{
int N, K, Sol;
in >> N >> K;
if( !K )
{
for( int i= 1; i<=N; ++i )
{
out << i << ' ';
}
return 0;
}
for( Sol= 2; Sol <= N && Sol * ( Sol-1 ) < 2*K; )
{
++Sol;
}
if( Sol * Sol - 1== 2*K )
{
for( int i= 1; i<=N-Sol; ++i )
{
out << i << ' ';
}
for( int i= N; i > N-Sol; --i )
{
out << i << ' ';
}
}
else
{
--Sol;
for( int i= 1; i<N-Sol; ++i )
{
out << i << ' ';
}
out << N - ( Sol+1 ) * Sol/2 + K << ' ';
for( int i= N; i>=N-Sol; --i )
{
if( i!= N-( Sol+1 ) * Sol/2 + K )
out << i << ' ';
}
}
return 0;
}