b 排列
檔名 輸入檔案 輸出檔案 時間限制 空間限制
perm.pas/c/cpp perm.in perm.out 1s 128mb
題目描述
小 g 喜歡玩排列。現在他手頭有兩個 n 的排列。n 的排列是由 0,1,2,...,n − 1
這 n 的數字組成的。對於乙個排列 p,order(p) 表示 p 是字典序第 order(p) 小的
排列(從 0 開始計數)。對於小於 n! 的非負數 x,perm(x) 表示字典序第 x 小的排
列。現在,小 g 想求一下他手頭兩個排列的和。兩個排列 p 和 q 的和為 sum =
perm((order(p) + order(q))%n!)。
輸入格式
輸入檔案第一行乙個數字 n,含義如題。
接下來兩行,每行 n 個用空格隔開的數字,表示小 g 手頭的兩個排列。
輸出格式
輸出一行 n 個數字,用空格隔開,表示兩個排列的和。
樣例輸入 1
20 1
1 0樣例輸出 1
1 0樣例輸入 2
31 2 0
2 1 0
3樣例輸出 2
1 0 2
資料範圍
1、2、3、4 測試點,1 ≤ n ≤ 10。
5、6、7 測試點,1 ≤ n ≤ 5000,保證第二個排列的 order ≤ 10 5 。
8、9、10 測試點,1 ≤ n ≤ 5000。
思路:這是排列的排名問題。
第一遍做我直接去算那個排名了,但大資料的話就需要用rank陣列來加減進製了
#include #include#include
#include
#include
#include
using
namespace
std;
const
int n=5009
;int
n;int
p[n],q[n];
intpp1[n],pp2[n],ans[n];
bool
cnt[n];
intmain()
for(int i=n;i>=1;i--)
printf(
"%d
",sum);
cnt[sum]=1
; }
return0;
}
語言 全排列 函式 巧用R中的各種排名視窗函式
前言 在sql中巧用視窗函式可以解決很多複雜的問題,視窗函式有4種函式型別 排名函式 偏移函式 聚合函式和分布函式,詳細介紹可以瀏覽 視窗函式 第一彈 視窗函式簡介 視窗函式 第二彈 排名函式和偏移函式 視窗函式 第三彈 聚合函式和分布函式 r語言中,也有與sql中一一對應的4種型別的視窗函式,除了...
分數排名 mysql mysql的分數排名處理
問題 將資料庫score表排名 返回排名前10的 db有兩種方法 1 效率不高,因為有子查詢。但是簡潔。而且我對socres表做了index。所以效能上也差 不了多少。mysql show create table scores g 1.row table scores create table c...
檔案內容排名演算法,輸入排名函式,返回排名後的檔名
快取優化查詢 const fs require fs 比較字元基類大小 相同返回0,str1 str2 返回1,str1function str compare str1,str2 else if str1.charcodeat index else if dis 0 indexreturn dis...