順列の次の順列を求める

問題概要 正整数nに対し、1からnまでの数値で構成される順列を辞書順に並べたとき、指定された順列のk個後の順列を求める問題です。最終順列の次は最初の順列に戻る必要があります。 例 n = 3, k = 2のとき、入力が2 3 1の場合: 1回後の順列:3 1 2 2回後の順列:3 2 1 入出力仕様 入力 1行目:テストケース数m 各テストケース: 1行目:n(1<=n<1024)とk ...

8月1日 00:23 投稿

SMU 2024年秋期 第1回個人戦 解説

A. 辞書順最小文字列生成 解法概要 2つの文字列を降順にソートし、交互に文字を取り出す。同じ文字列から連続して取り出す回数が制限値kを超えないようにしながら、最終的に辞書順が最小になるように構築する。 変更版コード例 #include <iostream> #include <algorithm> using namespace std; void process() { int lenA, lenB, maxSame; cin >> le ...

7月12日 19:03 投稿