2021 年 6 月青少年软编等考 C 语言六级真题解析

目录

  • T1. 波兰表达式
  • T2. 多项式相加
    • 思路分析
  • T3. 扑克牌排序
    • 思路分析
  • T4. 表达式求值
    • 思路分析

T1. 波兰表达式

题目链接:SOJ D1087

此题为 2023 年 12 月三级第三题原题,见 2023 年 12 月青少年软编等考 C 语言三级真题解析中的 T3。

T2. 多项式相加

题目链接:SOJ D1088

我们经常遇到两多项式相加的情况,在这里,我们就需要用程序来模拟实现把两个多项式相加到一起。首先,我们会有两个多项式,每个多项式是独立的一行,每个多项式由系数、幂数这样的多个整数对来表示。

如多项式 2 x 20 − x 17 + 5 x 9 − 7 x 7 + 16 x 5 + 10 x 4 + 22 x 2 − 15 2x^{20}- x^{17}+ 5x^9- 7x^7+ 16x^5+ 10x4 + 22x^2- 15 2x20x17+5x97x7+16x5+10x4+22x215,对应的表达式为:2 20 -1 17 5 9 -7 7 16 5 10 4 22 2 -15 0

为了标记每行多项式的结束,在表达式后面加上了一个幂数为负数的整数对。同时输入表达式的幂数大小顺序是随机的。我们需要做的就是把所给的两个多项式加起来。

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

  • 输入
    输入包括多行。
    第一行整数 n n n,表示有多少组的多项式需要求和, 1 < n < 100 1 < n < 100 1<n<100
    下面为 2 n 2n 2n 行整数,每一行都是一个多项式的表达式。表示 n n n 组需要相加的多项式。每行长度小于 300 300 300
  • 输出
    输出包括 n n n 行,每行为 1 1 1 组多项式相加的结果。在每一行的输出结果中,多项式的每一项用 [x y] 形式的字符串表示, x x x 是该项的系数、 y y y 是该项的幂数。要求按照每一项的幂从高到低排列,即先输出幂数高的项、再输出幂数低的项。 系数为零的项不要输出。
  • 样例输入
    2
    -1 17 2 20 5 9 -7 7 10 4 22 2 -15 0 16 5 0 -1
    2 19 7 7 3 17 4 4 15 10 -10 5 13 2 -7 0 8 -8
    -1 17 2 23 22 2 6 8 -4 7 -18 0 1 5 21 4 0 -1
    12 7 -7 5 3 17 23 4 15 10 -10 5 13 5 2 19 9 -7
    
  • 样例输出
    [ 2 20 ] [ 2 19 ] [ 2 17 ] [ 15 10 ] [ 5 9 ] [ 6 5 ] [ 14 4 ] [ 35 2 ] [ -22 0 ]
    [ 2 23 ] [ 2 19 ] [ 2 17 ] [ 15 10 ] [ 6 8 ] [ 8 7 ] [ -3 5 ] [ 44 4 ] [ 22 2 ] [ -18 0 ]
    
  • 提示
    第一组样例数据的第二行末尾的 8 -8,因为幂次 − 8 -8 8 为负数,所以这一行数据结束,8 -8不要参与计算。

思路分析

此题考查模拟算法,属于基础题。

可以用结构体存储多项式中每一项的系数和指数,然后将两个多项式分别按照指数非递增的顺序进行排序。接下来采用双指针依次遍历两个多项式,对于每一个指数,需要做的就是合并同类项

  • 如果 p o l y _ a i poly\_a_i poly_ai 的系数与 p o l y _ b j poly\_b_j poly_bj指数相等,则将两个多项式中与当前指数相等的所有项(同类项)的系数都累加起来;
  • 如果 p o l y _ a i poly\_a_i poly_ai指数大于 p o l y _ b j poly\_b_j poly_bj,则将多项式 p o l y _ a poly\_a poly_a 中与当前指数相等的所有项的系数累加起来;
  • 如果 p o l y _ a i poly\_a_i poly_ai指数小于 p o l y _ b j poly\_b_j poly_bj,则将多项式 p o l y _ b poly\_b poly_b 中与当前指数相等的所有项的系数累加起来;

每个指数对应的系数累加完毕之后,检测当前系数是否为 0 0 0,如果不为 0 0 0,则输出当前项的系数和指数。

/** Name: T2_1.cpp* Problem: 多项式相加* Author: Teacher Gao.* Date&Time: 2025/03/07 22:47*/#include <bits/stdc++.h>using namespace std;struct node {int x, y;node () {}node (int _x, int _y) : x(_x), y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/897300.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI数字人| Fay开源项目、UE5数字人、本地大模型

数字人实践教程 本教程主要是讲如何在本地UE部署Fay数字人的开源框架。 最终效果可以与人进行自然语言的对话&#xff0c;花了大概10个h的时间到&#xff0c;踩了很多坑&#xff0c;同样想实现的朋友可以作为参考 参考文档&#xff1a;Fay 数字人开源框架 - 飞书云文档 官方的教…

网络版汉译英服务(muduo)

文章目录 网络版汉译英服务&#xff08;muduo&#xff09;muduo库muduo 库是什么muduo 库常见接口介绍muduo::net::EventLoopmuduo::net::TcpConnectionmuduo::net::TcpServermuduo::net::TcpClientmuduo::net::Buffer 汉译英服务服务端客户端 网络版汉译英服务&#xff08;mud…

在ArcMap中通过Python编写自定义工具(Python Toolbox)实现点转线工具

文章目录 一、需求二、实现过程2.1、创建Python工具箱&#xff08;.pyt&#xff09;2.2、使用catalog测试代码2.3、在ArcMap中使用工具 三、测试 一、需求 通过插件的形式将点转线功能嵌入ArcMap界面&#xff0c;如何从零开始创建一个插件&#xff0c;包括按钮的添加、工具的实…

C++之序列容器(vector,list,dueqe)

1.大体对比 在软件开发的漫长历程中&#xff0c;数据结构与算法始终占据着核心地位&#xff0c;犹如大厦的基石&#xff0c;稳固支撑着整个程序的运行。在众多编程语言中&#xff0c;数据的存储与管理方式各有千秋&#xff0c;而 C 凭借其丰富且强大的工具集脱颖而出&#xff…

【学习笔记】【DeepSeek AI 医生】2-2 AI家庭医生课程内容介绍

【DeepSeek AI 医生】2-4 项目详细分析及DeepSeek适用场景 一、Ollama部署二、可视化UI三、构建项目环境四、搭建项目架构五、Spring Al六、SSE服务端推送事件七、数据持久化八、线上部署 一、Ollama部署 Mac部署windows 部署ollama脚本、常用命令DeepSeek 提示词、角色、适用…

STM32 I2C驱动开发全解析:从理论到实战 | 零基础入门STM32第五十步

主题内容教学目的/扩展视频I2C总线电路原理&#xff0c;跳线设置&#xff0c;I2C协议分析。驱动程序与调用。熟悉I2C总线协议&#xff0c;熟练调用。 师从洋桃电子&#xff0c;杜洋老师 &#x1f4d1;文章目录 引言一、I2C驱动分层架构二、I2C总线驱动代码精析2.1 初始化配置&a…

Vercel Serverless

1. 引言 现代应用程序是为适应当前技术环境需求而设计的软件&#xff0c;采用现代开发工具和实践&#xff0c;针对云部署和可扩展性优化。它们由多个模块化小组件组成&#xff0c;便于集成和缩放&#xff0c;具有高度的敏捷性和适应性&#xff0c;能快速响应用户或业务需求变化…

国产操作系统之系统分区及分区的作用

国产操作系统之系统分区及分区的作用和挂载 Linux的系统分区跟Windows有着本质区别,在windows中大家知道c盘一般为系统盘,除c盘系统盘外,我们再分为D、E等文件存储盘,而在Linux中虽然是以文件目录著称的系统,但思路也一样的,比如针对系统分区中 /home、/var 和 /opt 等文…

字节码是由什么组成的?

Java字节码是Java程序编译后的中间产物&#xff0c;它是一种二进制格式的代码&#xff0c;可以在Java虚拟机&#xff08;JVM&#xff09;上运行。理解字节码的组成有助于我们更好地理解Java程序的运行机制。 1. Java字节码是什么&#xff1f; 定义 Java字节码是Java源代码经过…

微前端框架 Qiankun 的应用及问题分析

一、Qiankun 的核心应用场景与优势 多技术栈共存与灵活集成 Qiankun 支持主应用与子应用使用不同技术栈&#xff08;如 Vue、React、Angular 等&#xff09;&#xff0c;通过 HTML Entry 方式接入子应用&#xff0c;无需深度改造子应用即可实现集成&#xff0c;降低了技术迁移成…

function uuid_generate_v4()不存在(二)

说明&#xff1a;之前代码里用到了postgresql内嵌函数uid_generate_v4()生成记录的主键&#xff0c;提示该函数不存在&#xff0c;写了下面这篇博客记录了一下&#xff0c;今天又发现了新的问题&#xff0c;于是补充了这篇博客。 function uuid_generate_v4()不存在&#xff0…

6. 机器人实现远程遥控(具身智能机器人套件)

1. 启动控制脚本 远程作到 Raspberry Pi 中&#xff0c;并运行以下脚本&#xff1a; conda activate lerobotpython lerobot/scripts/control_robot.py \--robot.typelekiwi \--control.typeremote_robot登录笔记本电脑上&#xff0c;同时运行以下脚本&#xff1a; conda ac…

【简单的C++围棋游戏开发示例】

C围棋游戏开发简单示例&#xff08;控制台版&#xff09; ‌核心代码实现‌ #include <iostream> #include <vector> #include <queue> using namespace std;const int SIZE 9; // 简化棋盘为9x9‌:ml-citation{ref"1" data"citationList&…

RK3568平台(音频篇)audio_policy_volumes_drc.xml解析

audio_policy_volumes_drc.xml 是 Android 系统中用于配置音频策略和音量的 XML 文件。它定义了音频流的音量曲线、动态范围控制(DRC)参数以及音频设备的音量设置。该文件通常位于 /vendor/etc/ 或 /system/etc/ 目录下,是 Android 音频框架的重要组成部分。 以下是对 audi…

如何下载安装 PyCharm?

李升伟 整理 一、下载 PyCharm 访问官网 打开 PyCharm 官网&#xff0c;点击 "Download" 按钮25。 版本选择&#xff1a; 社区版&#xff08;Community&#xff09;&#xff1a;免费使用&#xff0c;适合个人学习和基础开发。 专业版&#xff08;Professional&#…

leetcode day27 455+376

455 分发饼干 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最小尺寸&#xff1b;并且每块饼干 j&#xff0c;都有…

HPC超算系列2——新手指南1

一&#xff0c;平台简介&#xff1a; 主要是官方手册指南、B站视频&#xff08;培训视频、软件视频&#xff09; 1&#xff0c;超算平台架构&#xff1a; 和普通的家用电脑的架构不同&#xff0c; 主要区别在于&#xff1a;层次化的结构 &#xff08;1&#xff09;超算是有…

K8S单机部署

主线 :部署简单的单节点k8s - sowler - 博客园 学习网址&#xff1a;为什么我不能获取到镜像&#xff0c;ImagePullBackoff | Kuboard docker镜像源&#xff1a;https://chuxia.blog.csdn.net/article/details/145090710?spm1001.2101.3001.6650.3&utm_mediumdistribute…

web3区块链

Web3 是指下一代互联网&#xff0c;也被称为“去中心化互联网”或“区块链互联网”。它是基于区块链技术构建的&#xff0c;旨在创建一个更加开放、透明和用户主导的网络生态系统。以下是关于 Web3 的一些关键点&#xff1a; ### 1. **核心概念** - **去中心化**&#xff1…

SQL Server核心知识总结

SQL Server核心知识总结 &#x1f3af; 本文总结了SQL Server核心知识点,每个主题都提供实际可运行的示例代码。 一、SQL Server基础精要 1. 数据库核心操作 -- 1. 创建数据库&#xff08;核心配置&#xff09; CREATE DATABASE 学生管理系统 ON PRIMARY (NAME 学生管理系统…