Codeforces 757C - Felicity is Coming!
Posted Wisdom+.+
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces 757C - Felicity is Coming!相关的知识,希望对你有一定的参考价值。
思路:对于不同种类的宝可梦,如果他们所在的gym完全一样那么他们就可以互相进化成对方的种类。还有宝可梦可以进化后种类不变。设有n种所在gym完全一样的宝可梦,那么对于这种gym组合来说,有n!种可供选择的进化方案。
代码:
#include<bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define mem(a,b) memset((a),(b),sizeof(a)) const int MOD=1e9+7; const int N=1e6+5; vector<int>s[N]; int main() { ios::sync_with_stdio(false); cin.tie(0); int n,m,a,b; cin>>n>>m; for(int i=1;i<=n;i++) { cin>>a; while(a--) { cin>>b; s[b].pb(i); } } sort(s+1,s+m+1);//二维vector的排序,每行按第一个数字的大小排序,而且每一行中的元素都从小到大排好序 ll cnt=1,ans=1; for(int i=2;i<=m;i++) { if(s[i]==s[i-1]) { cnt++; ans=(ans*cnt)%MOD; } else cnt=1; } cout<<ans<<endl; return 0; }
以上是关于Codeforces 757C - Felicity is Coming!的主要内容,如果未能解决你的问题,请参考以下文章