題目鏈結
問題描述
給定乙個1~n的排列a[i],每次將相鄰兩個數相加,得到新序列,再對新序列重複這樣的操作,顯然每次得到的序列都比上一次的序列長度少1,最終只剩乙個數字。
例如:3 1 2 4
4 3 6
7 916
現在如果知道n和最後得到的數字sum,請求出最初序列a[i],為1~n的乙個排列。若有多種答案,則輸出字典序最小的那乙個。資料保證有解。
輸入格式
第1行為兩個正整數n,sum
輸出格式
乙個1~n的乙個排列
樣例輸入
4 16
樣例輸出
3 1 2 4
資料規模和約定
0演算法:vector用法+全排列 60分
例如下面的案例沒過:
輸入:10 4116
輸出:1 3 5 7 9 10 8 6 4 2
1 #include2using namespace std;
3int
main()14}
15if(b[0]==num)
20break;21
}22 }while
(next_permutation(a.begin(),a.end()));
23return 0;
24 }
試題 演算法訓練 數字遊戲
問題描述 給定乙個1 n的排列a i 每次將相鄰兩個數相加,得到新序列,再對新序列重複這樣的操作,顯然每次得到的序列都比上一次的序列長度少1,最終只剩乙個數字。例如 3 1 2 4 4 3 6 7 9 16 現在如果知道n和最後得到的數字sum,請求出最初序列a i 為1 n的乙個排列。若有多種答案...
演算法訓練 數字遊戲
資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給定乙個1 n的排列a i 每次將相鄰兩個數相加,得到新序列,再對新序列重複這樣的操作,顯然每次得到的序列都比上一次的序列長度少1,最終只剩乙個數字。例如 3 1 2 4 4 3 6 7 916 現在如果知道n和最後得到的數字sum...
藍橋杯VIP試題 演算法訓練 數字遊戲 C C
資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給定乙個1 n的排列a i 每次將相鄰兩個數相加,得到新序列,再對新序列重複這樣的操作,顯然每次得到的序列都比上一次的序列長度少1,最終只剩乙個數字。例如 3 1 2 4 4 3 6 7 916 現在如果知道n和最後得到的數字sum...