首页 > 其他分享 >C. On Number of Decompositions into Multipliers -- Codeforces

C. On Number of Decompositions into Multipliers -- Codeforces

时间:2023-01-01 22:56:47浏览次数:36  
标签:-- res into MAXV Codeforces Multipliers int mod

C. On Number of Decompositions into Multipliers

https://codeforces.com/problemset/problem/397/C

 

思路

 

 

Code

https://codeforces.com/contest/397/submission/185147057

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int mod=1e9+7;
const int MAXV=20000;
int inv[MAXV+10],jc[MAXV+10],invjc[MAXV+10];
int ksm(int a,int b,int res=1) {
    for(;b;a=a*a%mod,b>>=1)
        if(b&1) res=res*a%mod;
    return res;
}
void init() {
    jc[0]=1;
    for(int i=1;i<=MAXV;i++)
        jc[i]=jc[i-1]*i%mod;
    invjc[MAXV]=ksm(jc[MAXV],mod-2);
    for(int i=MAXV;i>0;i--)
        invjc[i-1]=invjc[i]*i%mod;
    for(int i=1;i<=MAXV;i++)
        inv[i]=jc[i-1]*invjc[i]%mod;
}
int C(int x,int y) {
    return jc[x]*invjc[y]%mod*invjc[x-y]%mod;
}
signed main() {
    init();
    int n;
    cin>>n;
    map<int,int> mp;
    for(int i=1;i<=n;i++) {
        int x;
        cin>>x;
        for(int j=2;j*j<=x;j++)
            while(x%j==0) x/=j,mp[j]++;
        if(x>1) mp[x]++;
    }
    int ans=1;
    for(auto tmp:mp)
        (ans*=C(tmp.second+n-1,n-1))%=mod;
    cout<<ans<<endl;
    return 0;
}

 

组合数解释

https://www.cnblogs.com/ke-xin/p/13532206.html

 

 

 


C(n+m−1,m−1)

 

标签:--,res,into,MAXV,Codeforces,Multipliers,int,mod
From: https://www.cnblogs.com/lightsong/p/17019198.html

相关文章

  • spring boot——spring boot的基本配置——日志配置——内置的LogBack
                                ==========================================================================......
  • 文献学习——A Deep Dive into Conflict Generating Decisions
    ADeepDiveintoConflictGeneratingDecisions Abstract.BooleanSatisfiability(SAT)isawell-knownNP-complete problem.Despitethistheoreticalha......
  • C++实现向上取整
    1.使用库函数doubleceil(doublex)由于传入的参数和返回的参数都是double,所以需要手动转化代码:#include<bits/stdc++.h>usingnamespacestd;intmain(){......
  • 23.0101 winter training.2
    A-BasicDiplomacy题意某人有n个朋友要出去m天,第i天可以选着\(a_i\)个朋友中的一个一起出去玩,每个朋友被选择的次数不能超过\(\lceilm\rceil\)问是否存在一种方案......
  • 安装Docker——镜像加速
    Docker的安装Docker的官网必须是Centos7版本,最好是7.7的内核,docker目前不支持Centos8Docker源路径的寻找因为官网的Docker的repo源是通过走国外的网站来获取的,对于网......
  • 包机制及java生成文档
    包机制为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。包机制的语法格式为:packagepkg1[.pkg2[.pkg3...]];$\color{red}{一般利用公司域名倒置作......
  • 在线视频项目学习笔记(三)—前台登录相关
    一、短信验证码接口分析1.首先第一点需要注意的就是短信验证码接口和登录接口不是一个接口,短信验证码接口是前端界面一点击发送验证码调用的,登录接口是前端在填上验证码以......
  • 包装类
    包装类针对八种基本定义相应的引用类型——包装类有类的特点,就可以调用类中的方法。包装类的分类基本数据类型包装类booleanBooleancharCharacter......
  • 超链接标签
    ​   <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title></title></head><body>......
  • 云锵投资 2022 年收益统计及 12 月简报
    本月是本年度最后一月,对本年的各策略进行了年度的收益统计:2022年12月云锵投资团队月报:摘要本月量化基金策略业绩:中;本月量化股票策略业绩:中;(优良中差,表明全国排名......