Multisets (4) P14098


Statement
 

pdf   zip

html

Write a program that, given four natural numbers n, x, y and t, prints all the multisets with t numbers that can be made up with {1, …, n}, in such a way that every number appears between x and y times.

Input

Input consists of a natural number n > 0, followed by a natural number x ≥ 0, followed by a natural number y > x, followed by a natural number t ≥ 0. Assume nxtny.

Output

Print all the multisets of size t that can be made up with {1, …, n}, using each number between x and y times. The numbers inside each multiset must appear in non-decreasing order.

Information about the checker

You can print the solutions to this exercise in any order.

Public test cases
  • Input

    3 1 4 6
    

    Output

    {1,2,3,3,3,3}
    {1,2,2,3,3,3}
    {1,2,2,2,3,3}
    {1,2,2,2,2,3}
    {1,1,2,3,3,3}
    {1,1,2,2,3,3}
    {1,1,2,2,2,3}
    {1,1,1,2,3,3}
    {1,1,1,2,2,3}
    {1,1,1,1,2,3}
    
  • Information
    Author
    Salvador Roura
    Language
    English
    Translator
    Salvador Roura
    Original language
    Catalan
    Other languages
    Catalan
    Official solutions
    C++
    User solutions
    C++