2023年中国传媒大学程序设计大赛(同步赛)

2023-11-10 05:41

本文主要是介绍2023年中国传媒大学程序设计大赛(同步赛),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

A-ACM

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

众所周知,ACM竞赛是计算机领域最具影响力和含金量的比赛,新队员小A与校队牛人小B聊了起来:

小A:师哥,如果我不坚持训练,能在ACM国家级比赛中获得奖牌吗?

小B:不太可能0.0

小A:不太可能是有多不可能?能说的具体一点吗,比如获得铜牌的概率是多少?

小B:其实我已经告诉你了0.0

输入描述:

一个非负整数n(0≤n≤10000),代表小A想知道的不坚持训练能在ACM国家级比赛中获得铜牌概率的精确位数。

输出描述:

0,精确到n位小数。

示例1

输入

1

输出

0.0

示例2

输入

0

输出

0

示例3

输入

10

输出

0.0000000000

//都输出0,只是还要控制输出的小数点后a位

#include<bits/stdc++.h>
using namespace std;
int main(){int a;cin>>a;cout<<"0";if(a)cout<<".";while(a--)cout<<"0";return 0;
}

B-贪吃的Diana

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

小草莓 Diana 同学是众所周知的大胃王,如果每天无法吃够总计 K 饱腹度的外卖,她就会不开心。

今天她的朋友 —— 帅气的 Queen 同学拿到了 Diana 之前 N 天点的所有外卖的外卖单,共计 S 份。  

每份外卖单上有两个数字,ni 和 ki ,分别表示这份外卖是 Diana 是在这 N 天里的 第 ni 天点的,且这份外卖饱腹度为 ki 。

现在她想要计算之前 N 天中,Diana有多少天是不开心的,你能帮帮她吗?

输入描述:

 

第一行输入 N 和 K 和 S,

接下来 S 行,其中第 i 行代表一份外卖单,包含两个整数 ni 和 ki,

表示 Diana 在第 ni 天,吃了一份饱腹度为 ki 的食物。

输出描述:

 

输出Diana 不开心的天数。

示例1

输入

复制10 5 5 4 6 2 5 3 4 3 1 1 1

10 5 5
4 6
2 5
3 4
3 1
1 1

输出

复制7

7

说明

Queen拿到了之前10天里,Diana的五份食物清单,且Diana每天需要至少吃饱腹度为 5 的食物才能开心。

其中,Diana 在第2天和第3天,都吃到了饱腹度之和为 5 的食物,而在第4天,吃到了饱腹度之和为 6 的食物。

在第1天,Diana 只吃到了饱腹度之和为 1 的食物。

在第5天,第6天,第7天,第8天,第9天,第10天,Diana 没有吃到任何食物。(所以也没有任何清单)

所以,Diana 在之前10天中,只有3天吃饱了,剩下有7天是不开心的。答案为7。

备注:

0 < N,S ≤ 105,

0 ≤ K ≤ 109,
0 < ni ≤ N,

0 ≤  ki ≤ 104

//同一天点了多份外卖

#include<bits/stdc++.h>
using namespace std;
int main(){int n,k,s,a,b,y=0,i;map<int,int>x;cin>>n>>k>>s;while(s--){cin>>a>>b;x[a]+=b;}for(i=1;i<=n;i++){if(x[i]<k)y++;}cout<<y;return 0;
}

 C-神河霓朝纪

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

万智牌当中有两种牌。

  • 一种叫 地牌。对于每张你场上的地牌,你可以横置它——这会为你产生 特定颜色的法术力

  • 另一种叫 咒语牌。对于每张咒语,你需要支付特定颜色的法术力作为费用,才能施放这张咒语。

而法术力总共有五种不同的颜色,白,蓝,黑,红,绿。

具体来说,地牌具有如下效果。当地牌被横置时,可以产生一点卡上标注的颜色的法术力。(例如下图,便是五张不同颜色的单色地牌)

而咒语牌上标注的费用一定由如下两种组成。

  • 特定颜色的法术力 若干点。

  • 任意颜色法术力 若干点。

例如 左下图,指的是该咒语费用为,一点任意颜色的法术力,和四点黑色法术力

例如 右下图,指的是该咒语费用为,三点任意颜色的法术力,和一点白色法术力,一点黑色法术力

现在给定你场上的若干张地牌(每张地牌都可以被横置一次,且最多可以被横置一次)

给定若干张咒语,问你是否能打出所有咒语。

输入描述:

 

第一行是一个整数T,代表测试数据组数。

对于每组数据:

第一行是一个整数 N,代表你有多少张地牌。

接下来 N 行,每行一个字符串,字符串包含一个大写字母,表示地牌的颜色。共有五种可能的大写字母,W U B G R,分别代表 白 蓝 黑 绿 红。

接下来一行,一个整数M,代表你有多少张咒语牌。

接下来 M 行,每行一个字符串(最长不超过10),字符串包含若干个大写字母,代表咒语的费用及颜色。共有六种可能的大写字母 W U B G R O,分别代表 白 蓝 黑 绿 红 及无色(即任意颜色)。

输出描述:

 

对于每组测试数据:

一个整行——如果你的地牌足以支付所有的咒语,输出 “YES”。否则输出 “NO”。

示例1

输入

复制7 2 W W 1 WW 4 U W W B 2 BUO W 2 R B 1 ROO 3 B U R 1 RRU 3 R U R 2 RR O 3 U R B 2 UB R 4 R U U W 4 R O W G

7
2
W
W
1
WW
4
U
W
W
B
2
BUO
W
2
R
B
1
ROO
3
B
U
R
1
RRU
3
R
U
R
2
RR
O
3
U
R
B
2
UB
R
4
R
U
U
W
4
R
O
W
G

输出

复制YES YES NO NO YES YES NO

YES
YES
NO
NO
YES
YES
NO

备注:

 

数据保证,0 < T ≤ 200,0 < N ≤ 10000,0 < M ≤ 1000。

对于每个 地牌 字符串,保证为长度为 1 的字符串,且只会包含W U B G R 五种可能的字符。

对于每个 咒语牌 字符串,保证其长度不小于1,不大于10,且只会包含 W U B G R O 六种可能的字符。

如果你对题面始终感到困惑,不妨这样理解——世界上共有五种类型的货币,而你有 N 张支票,每张支票都可以兑换一种特定类型的货币。现在你想购买 M 件商品,而每件商品的价格,都形如“人民币4块+日元5块+美元3块+任意货币6块”的组合。问你手上的 N 张支票是否可以购买所有 M 件商品。

//细节很重要,之前一直把最后的y写成了x,而恰巧测试样例完全通过,导致提交四次造成了八十分钟罚时,最后是自编样例如下,发现输出为NO,最后检测输出x为0,在百思不得其解中终于发现了这个细节。包括忘记输入m,导致出现自测  运行超时和内存超限,所以注意细节。

1
2
W
W
1
OO
#include<bits/stdc++.h>
using namespace std;
int main(){int t,n,m;string s1,c1;cin>>t;while(t--){cin>>n;int w=0,u=0,b=0,g=0,r=0,w1=0,u1=0,b1=0,g1=0,r1=0,o=0;while(n--){cin>>c1;if(c1=="W")w++; if(c1=="U")u++;if(c1=="B")b++; if(c1=="G")g++;if(c1=="R")r++;}cin>>m;for(int k=0;k<m;k++){cin>>s1;for(int i=0;i<s1.size();i++){if(s1[i]=='W')w1++; if(s1[i]=='U')u1++;if(s1[i]=='B')b1++; if(s1[i]=='G')g1++;if(s1[i]=='R')r1++;if(s1[i]=='O')o++;}}int x=0,y=0;x=w+u+b+g+r; y=w1+u1+b1+g1+r1;if(w>=w1&&u>=u1&&b>=b1&&g>=g1&&r>=r1&&(x-y)>=o)cout<<"YES\n";else cout<<"NO\n";}return 0;
}

这篇关于2023年中国传媒大学程序设计大赛(同步赛)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Linux线程同步/互斥过程详解

《Linux线程同步/互斥过程详解》文章讲解多线程并发访问导致竞态条件,需通过互斥锁、原子操作和条件变量实现线程安全与同步,分析死锁条件及避免方法,并介绍RAII封装技术提升资源管理效率... 目录01. 资源共享问题1.1 多线程并发访问1.2 临界区与临界资源1.3 锁的引入02. 多线程案例2.1 为

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流

Mysql的主从同步/复制的原理分析

《Mysql的主从同步/复制的原理分析》:本文主要介绍Mysql的主从同步/复制的原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录为什么要主从同步?mysql主从同步架构有哪些?Mysql主从复制的原理/整体流程级联复制架构为什么好?Mysql主从复制注意

Mac备忘录怎么导出/备份和云同步? Mac备忘录使用技巧

《Mac备忘录怎么导出/备份和云同步?Mac备忘录使用技巧》备忘录作为iOS里简单而又不可或缺的一个系统应用,上手容易,可以满足我们日常生活中各种记录的需求,今天我们就来看看Mac备忘录的导出、... 「备忘录」是 MAC 上的一款常用应用,它可以帮助我们捕捉灵感、记录待办事项或保存重要信息。为了便于在不同

查看MySql主从同步的偏移量方式

《查看MySql主从同步的偏移量方式》:本文主要介绍查看MySql主从同步的偏移量方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 1.mysql的主从同步方案mysqlphp为了在实现读写分离,主库写,从库读mysql的同步方案主要是通过从库读取主库的binl

MySQL主从同步延迟问题的全面解决方案

《MySQL主从同步延迟问题的全面解决方案》MySQL主从同步延迟是分布式数据库系统中的常见问题,会导致从库读取到过期数据,影响业务一致性,下面我将深入分析延迟原因并提供多层次的解决方案,需要的朋友可... 目录一、同步延迟原因深度分析1.1 主从复制原理回顾1.2 延迟产生的关键环节二、实时监控与诊断方案

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my