第33次ccf-csp计算机职业资格认证第1,2题

本来准备发最近的第34次ccf认证的,但好像最近貌似要查重就暂时等一下吧,先发点之前的。

(还有在抱怨一句,我为什么这次(34次)没考到300+。~_~)

那就来看看第33次ccf-csp的:

第一题:

在学习了文本处理后,小 P 对英语书中的 𝑛n 篇文章进行了初步整理。 具体来说,小 P 将所有的英文单词都转化为了整数编号。假设这 𝑛n 篇文章中共出现了 𝑚m 个不同的单词,则把它们从 11 到 𝑚m 进行编号。 这样,每篇文章就简化为了一个整数序列,其中每个数都在 11 到 𝑚m 范围内。

现给出小 P 处理后的 𝑛n 篇文章,对于每个单词 𝑖i(1≤𝑖≤𝑚1≤i≤m),试统计:

  1. 单词 𝑖i 出现在了多少篇文章中?
  2. 单词 𝑖i 在全部文章中总共出现了几次?

       题目其余就不再叙述了,大概意思就是让你统计每个数字出现在几个里面,和每个数字出现的总次数。我们考虑到为了更好的理解,不造成混淆,首先定义一个结构体用于记录每个数字的编号和出现的次数。(不要问为什么用typedef,这里是一点个人习惯)

typedef struct no{
    int id;
    int x;
    int y;
}node;

读入n和m后,采取读一个数据处理一个数据,这样可以减少对内存的占用,若为每个元素对应的id号,则对应的y加一,x改为1;

总代码如下:


                
### CCF CSP33认证考试 真《十滴水》解析 #### 题目概述 题目描述了一种名为“十滴水”的游戏规则,玩家通过一系列操作完成目标。此属于较复杂的算法设计类问,涉及字符串处理、数组遍历以及逻辑判断等内容[^2]。 #### 解思路 该的核心在于如何高效地实现对输入数据的操作并满足特定条件下的输出需求。以下是具体的解决方法: 1. **初始化变量** 定义必要的辅助变量用于存储中间状态或计算结果。这些变量可能包括但不限于计数器、标志位等。 2. **读取输入数据** 使用标准输入方式接收测试样例中的参数值,并将其转化为适合进一步运算的形式(如整型列表或其他结构化形式)。 3. **核心逻辑实现** 根据题目给出的游戏规则编写主要业务逻辑代码片段。这部分通常会涉及到多重循环嵌套或者递归调用机制来穷举所有可能性直到找到符合条件的结果为止。 4. **边界情况考虑** 特别注意一些极端情况下程序行为是否正确无误,比如当输入为空集时应返回什么;又或者是最大最小数值范围内的表现等等。 5. **优化性能** 如果初步方案存在效率低下之处,则需重新审视整个流程寻找可改进空间,例如减少不必要的重复计算数或是采用更高效的查找算法代替原始版本。 ```python def solve_ten_drops(input_data): result = [] # 初始化变量 n, m = input_data[:2] grid = [list(map(int, line.split())) for line in input_data[2:]] # 主要逻辑部分省略... return result if __name__ == "__main__": from sys import stdin lines = stdin.readlines() output = solve_ten_drops(lines) print("\n".join(str(x) for x in output)) ``` 上述伪代码仅为框架示意,具体细节还需参照官方发布的完整版解答文档进行补充完善。 #### 注意事项 考生在实际参赛过程中应当仔细阅读每一道试的要求说明,确保理解透彻后再动手编码实践。同时也要留意时间分配合理安排,避免因单道难耗费过多精力而影响整体得分率。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值