1. 程式人生 > 實用技巧 >【Flink系列二】用InfluxDb收集Flink Metrics

【Flink系列二】用InfluxDb收集Flink Metrics

題目描述

從 1~n 這 n 個整數中隨機選取任意多個,輸出所有可能的選擇方案。

輸入格式

輸入一個整數n。

輸出格式

每行輸出一種方案。

同一行內的數必須升序排列,相鄰兩個數用恰好1個空格隔開。

對於沒有選任何數的方案,輸出空行。

本題有自定義校驗器(SPJ),各行(不同方案)之間的順序任意。

資料範圍

1≤n≤15

輸入樣例:

3

輸出樣例:


3
2
2 3
1
1 3
1 2
1 2 3

C++ 程式碼

#include <cstring>
#include <iostream>
#include <algorithm>

using namespace std;

int n;

void dfs(int u, int state)
{
    if (u == n)
    {
        for (int i = 0; i < n; i ++ )
            if (state >> i & 1)
                cout << i + 1 << ' ';
        cout << endl;
        return;
    }

    dfs(u + 1, state);
    // dfs(u + 1, state + (1 << u)); // 把state第u位置成1,表示我們用這個數
    dfs(u + 1, state | (1 << u));
}

int main()
{
    cin >> n;
    dfs(0, 0);
    return 0;
}