148022025-02-02 19:56:49szjKombináció (50)cpp17Accepted 50/501ms508 KiB
#include <iostream>

using namespace std;

int main()
{
    //ifstream cin("f.txt");
    int n, m, i;
    cin >> n >> m;
    int kov[m+2], el[m];
    for(i=0; i<m;i++)
    {
        cin >> kov[i+1];
        el[i] = kov[i+1];
    }
    kov[m+1] = n+1;
    kov[0] = n+1;
    for(i=m; i>-1; i--)if(kov[i]+1 < kov[i+1])break;
    if(i!=-1)
    {
        kov[i]++;
        for(i=i+1; i<=m; i++)kov[i] = kov[i-1]+1;
    }
    else for(i=1; i<=m; i++)kov[i] = i;

    for(i=m-1; i>-1; i--)if(el[i]-1 > el[i-1])break;
    if(i!=-1)
    {
        el[i]--;
        for(i=i+1; i<m; i++)el[i] = n-m+i+1;
    }
    else for(i=0; i<m; i++)el[i] = n-(m-i-1);
    for(i=0; i<m; i++)cout << el[i] << " ";
    cout << endl;
    for(i=1; i<=m; i++)cout << kov[i] << ' ';
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms500 KiB
2Accepted0/01ms316 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms316 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms316 KiB
10Accepted4/41ms316 KiB
11Accepted4/41ms316 KiB
12Accepted4/41ms388 KiB
13Accepted4/41ms316 KiB
14Accepted4/41ms316 KiB
15Accepted4/41ms508 KiB
16Accepted6/61ms316 KiB
17Accepted6/61ms316 KiB