news 2026/7/28 16:24:27

打卡信奥刷题(2545)用C++实现信奥 P2098 [USACO16DEC] Team Building P

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2545)用C++实现信奥 P2098 [USACO16DEC] Team Building P

P2098 [USACO16DEC] Team Building P

题目描述

每年,Farmer John 都会带着他的NNN头奶牛参加州展览会的“最佳展示”比赛。他的劲敌 Farmer Paul 也会带着他的MMM头奶牛参加比赛(1≤N≤1000,1≤M≤10001 \leq N \leq 1000, 1 \leq M \leq 10001N1000,1M1000)。

参加比赛的N+MN + MN+M头奶牛每头都会获得一个单独的整数得分。然而,今年的最终比赛将由KKK头奶牛组成的团队决定(1≤K≤101 \leq K \leq 101K10),规则如下:

Farmer John 和 Farmer Paul 各自选择KKK头奶牛组成团队进行比赛。这两个团队的奶牛将按得分高低配对:

FJ 团队中得分最高的奶牛与 FP 团队中得分最高的奶牛配对,FJ 团队中得分第二高的奶牛与 FP 团队中得分第二高的奶牛配对,依此类推。如果在每一对中,FJ 的奶牛得分都更高,那么 FJ 获胜。

请帮助 FJ 计算他和 FP 可以选择团队的不同方式的数量,使得 FJ 能够赢得比赛。也就是说,每个不同的(FJ 的KKK头奶牛集合,FP 的KKK头奶牛集合)对,只要 FJ 获胜,都应被计入。输出结果对1 000 000 0091\,000\,000\,0091000000009取模。

输入格式

输入的第一行包含NNNMMMKKKKKK的值不会超过NNNMMM

第二行包含 FJ 的NNN头奶牛的得分。

第三行包含 FP 的MMM头奶牛的得分。

输出格式

输出 FJ 和 FP 可以选择团队的方式数量,使得 FJ 获胜,结果对1 000 000 0091\,000\,000\,0091000000009取模。

输入输出样例 #1

输入 #1

10 10 3 1 2 2 6 6 7 8 9 14 17 1 3 8 10 10 16 16 18 19 19

输出 #1

382

C++实现

#include<cstdio>#include<cstdlib>#include<iostream>#include<cmath>#include<algorithm>#include<cstring>#definemo1000000009usingnamespacestd;inta[1005],b[1005],f[12][1005][1005],n,m,p;intmain(){scanf("%d%d%d",&n,&m,&p);for(inti=1;i<=n;i++)scanf("%d",&a[i]);for(inti=1;i<=m;i++)scanf("%d",&b[i]);sort(a+1,a+n+1);sort(b+1,b+m+1);for(inti=0;i<=n;i++)for(intj=0;j<=m;j++)f[0][i][j]=1;for(inti=1;i<=p;i++){for(intj=1;j<=n;j++)for(intk=1;k<=m;k++)if(a[j]>b[k])f[i][j][k]=f[i-1][j-1][k-1];for(intj=1;j<=n;j++)for(intk=1;k<=m;k++)f[i][j][k]=(f[i][j][k]+f[i][j][k-1])%mo;for(intj=1;j<=n;j++)for(intk=1;k<=m;k++)f[i][j][k]=(f[i][j][k]+f[i][j-1][k])%mo;}printf("%d",f[p][n][m]);}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/26 9:01:42

5分钟快速验证:单臂路由概念验证实验室

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个极简单臂路由原型系统&#xff0c;要求&#xff1a;1. 使用Docker容器模拟交换机和路由器 2. 通过简单UI选择VLAN数量和IP网段 3. 自动生成并应用配置 4. 提供ping/tracero…

作者头像 李华
网站建设 2026/7/28 2:17:43

手机写小说软件2025推荐,多维度解析

手机写小说软件2025推荐&#xff0c;多维度解析在当今数字化的时代&#xff0c;手机写小说软件成为了众多作家和写作爱好者的得力助手。随着技术的不断发展&#xff0c;2025年的手机写小说软件市场呈现出百花齐放的态势。本文将从功能、界面、用户体验、安全性等多个维度&#…

作者头像 李华
网站建设 2026/7/26 8:50:27

AI如何帮你快速实现Redisson分布式锁?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 使用快马平台生成一个基于Redisson的分布式锁实现代码。要求包含以下功能&#xff1a;1. 支持可重入锁&#xff1b;2. 支持锁的自动续期&#xff1b;3. 提供锁获取超时机制&#xf…

作者头像 李华
网站建设 2026/7/23 11:47:28

10个Windows资源管理器快捷键提升办公效率200%

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个Windows资源管理器效率提升指南网页应用&#xff0c;包含&#xff1a;1. 10个核心快捷键的交互式演示&#xff08;如F2重命名、Alt↑返回上级&#xff09;2. 每个快捷键配套…

作者头像 李华
网站建设 2026/7/28 12:09:31

3分钟极速配置:Mac安装JDK1.8的高效方法对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个性能对比工具&#xff0c;比较不同JDK1.8安装方式的效率。工具应&#xff1a;1) 记录手动安装&#xff08;官网下载手动配置&#xff09;的时间&#xff1b;2) 记录使用Hom…

作者头像 李华
网站建设 2026/7/28 6:34:00

TRUNCATE vs DELETE:百万数据清理效率对比实验

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个MySQL性能测试方案&#xff1a;1) 创建包含100万测试数据的表 2) 分别用TRUNCATE和DELETE清空表 3) 记录执行时间和系统资源占用 4) 生成可视化对比图表 5) 输出优化建议报…

作者头像 李华