Cod sursa(job #3150890)

Utilizator PescarusTanislav Luca Andrei Pescarus Data 18 septembrie 2023 22:05:33
Problema Farfurii Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");

const int nmax = 100005;
int n, k;
int a[nmax];

int main(){
  f >> n >> k;
  int m = 0;
  for(int i = 1;  i <= n; i++){
    if(i * (i - 1) / 2 <= k){
        m = i;
    }
  }
  if(m * (m - 1) / 2 == k){

    for(int i = 1; i <= n - m; i++){
      g << i << ' ';
    }
    for(int i = n; i >= n - m + 1; i--){
      g << i << ' ';
    }
  }
  else{
    int val = n - ((m + 1) * m / 2 - k);
    for(int i = 1; i <= n - m - 1; i++){
      g << i << ' ';
    }
    g << val << ' ';
    for(int i = n; i > val; i--){
      g << i << ' ';
    }
    for(int i = val - 1; i >= n - m; i--){
      g << i << ' ';
    }
  }


}