当前位置: 首页 > article >正文

2020 年 9 月青少年软编等考 C 语言三级真题解析

目录

  • T1. 因子问题
    • 思路分析
  • T2. 质数的和与积
    • 思路分析
  • T3. 括号匹配问题
    • 思路分析
  • T4. 吃糖果 2
    • 思路分析
  • T5. 铺砖
    • 思路分析

T1. 因子问题

任给两个正整数 n n n m m m,求一个最小的正整数 a a a,使得 a a a ( m − a ) (m-a) (ma) 都是 n n n 的因子。

时间限制:1 s
内存限制:64 MB

  • 输入
    包括两个整数 n n n m m m n n n 不超过 1 0 6 10^6 106
  • 输出
    输出一个整数 a a a,表示结果。如果答案不存在,则输出 -1
  • 样例输入
    35 10
    
  • 样例输出
    5
    

思路分析

此题考查枚举法,难度入门。

常规思路下,我们可以枚举 1 ∼ m / 2 1 \sim m / 2 1m/2 的所有数字,逐一验证是否满足条件,但是题目中并没有给出 m m m 的范围,这给我们带来了不小的障碍。不妨转变思路,枚举 n n n 的所有因子,事实上,由于因子成对出现这一特性,我们只需要枚举 1 ∼ n 1 \sim \sqrt{n} 1n 的所有数字即可,加快枚举效率。

/*
 * Name: T1.cpp
 * Problem: 因子问题
 * Author: Teacher Gao.
 * Date&Time: 2024/11/16 15:06
 */

#include <iostream>

using namespace std;

int main()
{
   
	int n, m;
	cin >> n >> m;

	for (int i = 1; i * i <= n; i++) {
   
		if (n % i == 0 && n % (m-i) == 0) {
   
			cout << i;
			return 0;
		}
	}

	cout << -1;

	return 0;
}

T2. 质数的和与积

两个质数的和是 S S S,它们的积最大是多少?

时间限制:1 s
内存限制:64 MB

  • 输入
    一个不大于 10000 10000 10000 的正整数 S S S,为两个质数的和。
  • 输出
    一个整数,为两个质数的最大乘积。数据保证有解。
  • 样例输入
    50
    
  • 样例输出
    589
    

思路分析

此题考查枚举法与素数判定,难度入门。

根据题目描述, S S S 必定是两个素数之和。由于 2 2 2 是唯一的偶素数,为了加快枚举效率,我们可以分情况讨论:

  • 如果

http://www.kler.cn/a/402496.html

相关文章:

  • ollama教程——在Linux上运行大型语言模型的完整指南
  • 内网渗透横向移动1
  • 获取商店里的应用的中文和英文名称
  • 堆优化版本的Prim
  • OceanBase 驱动类获取数据库精确类型 “Oracle|MySQL”
  • c# npoi操作excel
  • Django实现智能问答助手-进一步完善
  • Go(java基础)
  • AI 赋能电商的未来:购物推荐、会员分类与智能定价的创新实践
  • 2. SpringBoot + MQTT 门禁设备对接实战
  • Kafka Stream实战教程
  • 深入解析小程序组件:view 和 scroll-view 的基本用法
  • 测试使用vite搭建的uni-app打包app区分开发环境和生产环境
  • linux 中mysql查看慢日志
  • 51c自动驾驶~合集31
  • 用Rust中byteorder包高效处理字节序列
  • 第二十二章 Spring之假如让你来写AOP——Target Object(目标对象)篇
  • 项目管理交流会 | 产品研发项目管理主题会议成功举办
  • Cesium 加载B3DM模型
  • 枫清科技亮相 2024 中国 5G+工业互联网大会,推动 AI 赋能新型工业化
  • Spring Boot教程之四:在IntelliJ IDEA 以及 Eclips IDE中创建和配置Spring Boot
  • 根据条件 控制layui的table的toolbar的按钮 显示和不显示
  • 【Redis】实现点赞功能
  • 5.tree of thought 源码 (prompts 类)
  • 零基础入门Flink,掌握基本使用方法
  • 华为openEuler考试真题演练(附答案)