TC-SRM-609-DIV2-950- VocaloidsAndSongs

2023-10-16 20:38

本文主要是介绍TC-SRM-609-DIV2-950- VocaloidsAndSongs,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

做到这道题目的时候,大脑已经极度不清醒了,头昏昏的,很不舒服。

后来想不能半途而废。要努力做一次完美的比赛。后来就直接做了。

最后rank50,虽然是在div2,但是也是比较高兴的。

cha阶段,我一开始看见两个错误的代码,但是下手太慢了,就被别人cha掉了。伤心。。。

言归正传:

预处理dp(i,j):从i个中取j个的取法。

ans[i]:一共有i首歌曲,结果是多少。

i首歌曲,三种人分别有a,b,c个。

如果不考虑某一首歌可能没人唱的可能那么:ans[i]=dp[i][a]*dp[i][b]*dp[i][c];

如果一共有j首歌没人唱的可能性一共有:(dp[i][i-j]*ans[j])%MOD;

最终ans[n]就是结果。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
#include<vector>
using namespace std;
#define INF 0xfffffff
#define MOD  1000000007
#define LL long long
LL dp[101][101];
LL ans[101];
void init()
{int i,j;for(i=0;i<51;i++){for(j=0;j<51;j++){dp[i][j]=0;}}dp[1][1]=1;for(i=2;i<=51;i++){dp[i][1]=i;for(j=2;j<=51;j++){dp[i][j]=(dp[i-1][j-1]+dp[i-1][j])%MOD;}}
}
int dos(int n,int a,int b,int c)
{if(a>b)swap(a,b);if(a>c)swap(a,c);if(b>c)swap(b,c);int all=a+b+c;if(all<n)return 0;init();int i,j;for(i=1;i<=n;i++){if(i<c)ans[i]=0;else{ans[i]=(((dp[i][a]*dp[i][b])%MOD)*dp[i][c])%MOD;for(j=i-1;j>=1;j--){ans[i]-=(dp[i][i-j]*ans[j])%MOD;}while(ans[i]<0)ans[i]+=MOD;}}return ans[n];
}
class VocaloidsAndSongs
{public:int count(int S, int gumi, int ia, int mayu){return dos(S,gumi,ia,  mayu);}
};
/*
int main()
{int n,a,b,c;while(scanf("%d%d%d%d",&n,&a,&b,&c)){cout<<dos(n,a,b,c)<<endl;}
}
*/


这篇关于TC-SRM-609-DIV2-950- VocaloidsAndSongs的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/220646

相关文章

使用 tc netem 模拟网络异常

文章转自:使用 tc netem 模拟网络异常(原文配色实在是对阅读不太友好。。。) 在某些情况下,我们需要模拟网络很差的状态来测试软件能够正常工作,比如网络延迟、丢包、乱序、重复等。linux 系统强大的流量控制工具 tc 能很轻松地完成,tc 命令行是 iproute2 软件包中的软件,可以根据系统版本自行安装。 流量控制是个系统而复杂的话题,tc 能做的事情很多,除了本文介绍的还有带宽控

TC开发中写多行属性char**处理方法

//申请一个动态的数组 char ** indeta_s = (char**)MEM_alloc( sizeof(char*)vec_indeta.size()+1); for(int k=0;k<vec_indeta.size();k++){ printf(“indeta添加到数组\n”); //给数组对象分配一个动态的字符串长度 indeta_s[k]=(char)MEM_alloc( siz

NX上传数据集到TC问题

NX上传数据集到TC问题 NX集成TC中上传数据集总是,”Sheet“的命名的引用不存在与 Sheet中。 解决版本是因为没有再Sheet数据集中添加对应的CGM文件的引用和工。再BMIDE中给数据集Sheet添加对应的工具PV 和新的引用”XD5-cgm“,再次上传成功。

【#254_DIV2】-A B C

题目链接:http://codeforces.com/contest/445 解题报告: 俄国人今天不知道为什么九点钟就比赛了。只过了两道题,第三题完全没思路,有时间单独去刷第三题吧,看起来很难 A - DZY Loves Chessboard 太水了。。。 直接W、B错开填,顺便先抹上“ - ” 就完了 #include <iostream>#include <cstdio>

【#247_DIV2】-A B C

题目链接:http://codeforces.com/contest/431 解题报告: A - Black Square 一道神经病的题。。不知道为何水到如此地步。。。 #include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int

「合诚」× 企企通SRM项目启动,高分子新材料和健康产业高新技术企业将奔赴数智采购新征程

为拉通产业链上下游,优化提升整体效率,帮助企业变革采购管理方式,推动化工新材料行业高质量发展,近日,合诚技术股份有限公司(以下简称“合诚”)携手企企通成功举办了SRM项目启动会,双方高层领导、项目负责人、核心成员共同出席了本次启动会。 01、技术革新,探索新阶段信息化发展路径 合诚是一家集科研、生产、销售于一体的充满活力的民营高新技术企业,致力于高分子新材料

Codeforces 969 div2[A~E] 个人题解

目录 A - Dora's Set 原题链接 思路分析 AC代码 B - Index and Maximum Value 原题链接 思路分析 AC代码 C - Dora and C++ 原题链接 思路分析 AC代码 D - Iris and Game on the Tree 原题链接 思路分析 AC代码 E - Iris and the Tree 原题链接 思

TC-RAG: Turing-Complete RAG--图灵完备的检索增强

摘要: 在提升领域特定的大语言模型(LLMs)的方法中,检索增强生成(RAG)技术作为一种有前景的解决方案,可以缓解诸如幻觉、知识过时以及在高度专业化查询中专业知识有限等问题。然而,现有的RAG方法忽视了系统状态变量的引入,而系统状态变量对于确保自适应控制、检索停止和系统收敛至关重要。本文通过严格的理论证明,提出了图灵完备的RAG(TC-RAG)框架,通过引入图灵完备的系统来管理状态变量,从

IDFL-TC申请问题答疑

TC问题解答  #1 一份TC上如果有多个运输,运输日期间隔是多久? 如果客户有多个运输从同一地址发出,买家均为同一个,且多个运输时间间隔不超过3个月,CB允许客户合并多个运输在同一个TC中。 #2 TC申请的最优时间是怎么样的? 客户最优选择是在发货后的90天内进行TC的申请。 #3 分包商的使用要求是什么? 客户在进行分包活动前,请先将满足要求的分包商信息显示在范围证书上。 #4 加急服务(R

从混乱到有序:SRM系统如何优化工厂采购流程

一、工厂采购管理的重要性 工厂采购管理是企业运营中的关键环节,它直接影响到生产成本、产品质量和市场响应速度。有效的采购管理能够降低成本、提升供应链的灵活性和响应市场变化的能力。在竞争激烈的市场环境中,采购管理的优劣直接关系到企业的竞争力和盈利能力。 二、工厂SRM系统核心功能 2.1 供应商管理 供应商管理是SRM系统的核心组成部分,其主要目标是建立和维护与供应商的长期合作关系。通