Codeforces round#429 div2 C

来源:互联网 发布:差分演化算法及其应用 编辑:程序博客网 时间:2024/05/16 18:10

题目链接:点击打开链接

一个组合公式

(公式内左右内容写反了跪#越学越差系列

最后结果 F[n,k] = (n+1)/(k+1)

化简详情 :点击打开链接

AC代码如下:

#include <iostream>#include <cstring>#include <algorithm>using namespace std;int A[200005];int C[200005];struct BT{    int po;    int num;    int operator<(const BT& o)    {        return num<o.num;    }};BT  B[200005];int main(){    int m;    while(cin>>m)    {        for(int i=1;i<=m;++i)            cin>>A[i];        for(int i=1;i<=m;++i)        {            B[i].po = i;            cin>>B[i].num;        }        sort(A+1,A+1+m);        sort(B+1,B+1+m);        for(int i=m;i>=1;--i)            C[B[m-i+1].po] = A[i];        for(int i=1;i<=m;++i)            cout<<C[i]<<" ";        cout<<endl;    }    return 0;}