2024C++信息素养大赛-算法创意实践挑战_复赛真题(广东省)题目+参考答案和详细解析

第一题:

#include<bits/stdc++.h>
using namespace std;
int a,b;int main(){scanf("%d%d",&a,&b);printf("%d",a*b);return 0;
}

 第二题:

#include<bits/stdc++.h>
using namespace std;
int a,b,c;int main(){scanf("%d%d%d",&a,&b,&c);if(a==b&&b==c) printf("Equilateral glass");else if(a==b || b==c || c==a) printf("Isosceles glass");else if(a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a) printf("Right angle glass");else printf("None");return 0;}

第三题:

#include<bits/stdc++.h>
using namespace std;
int n;
int a[1010][1010];
int main(){scanf("%d",&n);vector<int> res;for(int i=1;i<=n;i++){char flag;int x,y,k;cin>>flag;if(flag=='M'){ scanf("%d%d%d",&x,&y,&k);a[x][y]=k;} else if(flag=='N'){scanf("%d%d",&x,&y);res.push_back(a[x][y]);}}for(int i : res){printf("%d\n",i);}return 0;
}

第四题:

计算在一个 \( n \times m \) 的矩形中可以放置的所有可能的正方形的数量,除了逐个遍历每个可能的正方形边长的解法外,还可以通过数学公式进行推导和简化。下面是一些其他可能的解法:

解法一:数学公式推导

#include<bits/stdc++.h>
using namespace std;
int n,m;
int main(){scanf("%d%d",&n,&m);int min_side=min(n,m);int ans=0;for(int k=1;k<=min_side;k++){ans+=(n-k+1)*(m-k+1);}printf("%d",ans);return 0;
}

 

解法二:累积面积法

int total_squares = 0;
for (int i = 1; i <= n; ++i) {for (int j = 1; j <= m; ++j) {int max_square_size = min(n - i + 1, m - j + 1);total_squares += max_square_size;}
}

解法三:动态规划法

vector<vector<int>> dp(n, vector<int>(m, 0));
int total_squares = 0;for (int i = 0; i < n; ++i) {for (int j = 0; j < m; ++j) {if (grid[i][j] == 1) {if (i == 0 || j == 0) {dp[i][j] = 1;} else {dp[i][j] = 1 + min({dp[i-1][j], dp[i][j-1], dp[i-1][j-1]});}total_squares += dp[i][j];}}
}

 解法四:递归与记忆化搜索

第五题:

 

#include<bits/stdc++.h>
using namespace std;
int n;
string str;
int main(){cin>>n;cin>>str;for(int i=1;i<=n;i++){char ch;string str_1;cin>>ch;if(ch=='F') {cin>>str_1;str=str_1+str;	}else if(ch=='B'){cin>>str_1;str=str+str_1;} else if(ch=='R'){reverse(str.begin(),str.end());} }cout<<str;return 0;
}

第六题:

【题目描述】

花果山上有一只猴子,每天都去蟠桃园摘桃子。第一天,猴子只摘了一个桃子:之后两天(第二天和第三天),最子每天都摘两个桃子,之后三天(第四、五、六天),猴子每天都摘三个桃子,之后四天(第七、八、九、十天),猴子每天都四个桃子.…这种模式会一直持续下去,因为蟠桃园里的桃子无穷无尽,请计算在前n天里,猴子一共摘了多少个挑子。

【输入描述】

输入只有一厅,一个正整数n,表示前n天.

【输出描述】

钟出只有一行,一个正整数,表示前n天猴子一共摘了多少个桃子。

【输入】

6

【输出】

14

【提示】

方法一:数学递推法

保证1<=n<= 1000.

解析:

1:第一天:1(1*1)

2:第二天,第三天:2,2(2*2)

3:第四天,第五天,第六天:3,3,3(3*3)

……

x:……第n天:x,x,x……(x*x)

例如输入6(表示6天)

1:第一天:1(1*1)

2:第二天,第三天:2,2(2*2)

3:第四天,第五天,第六天:3,3,3(3*3)

1+2+3=6天;

1*1+2*2+3*3=14个桃;

#include<bits/stdc++.h>
using namespace std;
int n;
long long sum=0;
int main(){scanf("%d",&n);for(int i=1,j=1;i<=n;i+=j){sum+=j*j;j++;}printf("%lld",sum);
}

方法二:

你可以用一个变量来跟踪当前的天数,一个变量来跟踪当前的周期长度,以及一个变量来计算总共摘了多少个桃子。

#include<bits/stdc++.h>
using namespace std;
int n;
long long sum=0;
int main(){scanf("%d",&n);int L=1; //表示跟踪当前的周期长度for(int d=1;d<=n;d++){//d表示天数 for(int i=1;i<=L;i++){sum+=L;d++;}L++; }printf("%lld",sum);
}

 

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

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

相关文章

如何选择一款适合自己的鼠标?

在今天的数字时代&#xff0c;鼠标已经成为人们日常办公和娱乐的不可或缺的工具之一。然而&#xff0c;市面上各式各样的鼠标琳琅满目&#xff0c;如何选择一款适合自己的鼠标成为了一个令人困惑的问题。 鼠标的类型 在选择鼠标时&#xff0c;首先需要了解鼠标的类型。常见的…

昇思学习打卡-15-热门LLM及其他AI应用/基于MindNLP+MusicGen生成自己的个性化音乐

文章目录 MusicGen权重选择生成音乐采样模式&#xff08;Sampling&#xff09;贪心模式&#xff08;Greedy Search&#xff09;使用 学习使用MindNLPMusicGen生成自己的个性化音乐的流程 MusicGen MusicGen模型基于Transformer结构&#xff0c;可以分解为三个不同的阶段: 用户…

文心快码——百度研发编码助手

介绍 刚从中国互联网大会中回来&#xff0c;感受颇深吧。百度的展商亮相了文心快码&#xff0c;展商人员细致的讲解让我们一行了解到该模型的一些优点。首先&#xff0c;先来简单介绍一下文心快码吧。 文心快码&#xff08;ERNIE Code&#xff09;是百度公司推出的一个预训练…

AGI 之 【Hugging Face】 的【问答系统】的 [Haystack构建问答Pipeline] 的简单整理

AGI 之 【Hugging Face】 的【问答系统】的 [Haystack构建问答Pipeline] 的简单整理 目录 AGI 之 【Hugging Face】 的【问答系统】的 [Haystack构建问答Pipeline] 的简单整理 一、简单介绍 二、构建问答系统 三、用Haystack构建问答pipeline 1、检索器 2、阅读器 3、初…

24暑假计划

暑假计划&#xff1a; 1.从明天起开始将C语言的部分补充完整&#xff0c;这部分的预计在7月24日前完成 2.由于之前的文章内容冗余&#xff0c;接下来进行C语言数据结构的重新编写和后面内容的补充预计8月10号前完成 3.后续开始C的初级学习

使用C++编写TCP服务端程序

要使用Boost.Asio库来开发一个TCP服务端程序&#xff0c;你需要遵循以下步骤。下面的示例代码将演示如何创建一个简单的异步TCP服务器&#xff0c;它能够接收客户端连接&#xff0c;并异步处理请求和响应。 首先&#xff0c;确保你已经安装了Boost库&#xff0c;并在你的项目中…

普通打工人,如何应对AI的滚滚巨轮:智对AI巨轮,行稳致远——普通打工人的智慧修行

智对AI巨轮&#xff0c;行稳致远——普通打工人的智慧修行 阿弥陀佛&#xff0c;善哉善哉。在这科技日新月异的时代&#xff0c;AI之巨轮滚滚向前&#xff0c;势不可挡&#xff0c;令世间万物皆为之变。作为普通打工人&#xff0c;身处其间&#xff0c;我们虽非那掌舵之人&…

YOLOv5改进 | 注意力机制| 对小目标友好的BiFormer【CVPR2023】

秋招面试专栏推荐 &#xff1a;深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 &#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 专栏目录&#xff1a; 《YOLOv5入门 改…

从新手到进阶:高效设计 Tableau 可视化的 5 种技巧 | 数据可视化分析

让我们一起跟着大神学习五个超实用的技巧&#xff0c;加速你的可视化分析之旅&#xff01; 在日常分析中&#xff0c;人人都想实现可视化最佳实践。然而&#xff0c;对于很多初学者来说&#xff0c;在还未熟练掌握 Tableau 的情况下&#xff0c;这种愿望貌似不太符合实际。 为…

【HarmonyOS】获取通讯录信息

【HarmonyOS】获取通讯录信息 一、问题背景&#xff1a; 在Android和IOS中&#xff0c;获取手机通讯录信息的方式&#xff0c;一般是申请通讯录权限后&#xff0c;获得手机所有的通讯录列表信息。 在鸿蒙中&#xff0c;因为权限方式安全性提高的变更&#xff1a;将用户权限限…

【八股系列】CSS盒模型:掌握网页布局的核心

&#x1f389; 博客主页&#xff1a;【剑九 六千里-CSDN博客】 &#x1f3a8; 上一篇文章&#xff1a;【Vue中的&#xff1c;keep-alive&#xff1e;组件&#xff1a;深入解析与实践指南】 &#x1f3a0; 系列专栏&#xff1a;【面试题-八股系列】 &#x1f496; 感谢大家点赞&…

爬虫管理解决方案:让数据收集变得高效且合规

一、为何数据收集的效率与合规性同等重要&#xff1f; 随着大数据技术的飞速发展&#xff0c;数据收集已成为企业决策与市场洞察的核心驱动力。然而&#xff0c;在信息海洋中精准捕捞的同时&#xff0c;如何确保这一过程既高效又不触碰法律的红线&#xff0c;是每个数据实践者…

深入探讨 Google 竞价:开启海外市场的神秘钥匙与潜在风险

在这个充满挑战与机遇的数字化时代&#xff0c;Google竞价犹如开启神秘宝藏的一把钥匙&#xff0c;引领众多企业走向海外市场的康庄大道。身为数字营销领域的资深人士&#xff0c;我对Google竞价的独特魅力及潜在风险有着深刻理解。今日&#xff0c;我将带领大家深入探讨这一既…

华为OJ平台

华为OJ是一个在线编程平台&#xff0c;用于支持**华为公司的软件开发岗位招聘流程&#xff0c;考察候选人在算法设计、编程和调试等方面的技能水平**。以下是有关它的介绍&#xff1a; 1. **平台功能** - **多语言支持**&#xff1a;华为OJ平台支持多种编程语言&#xff0c;包括…

[C++]封装

一、封装的定义 封装是面向对象编程&#xff08;OOP&#xff09;的三大基本特性之一&#xff08;封装、继承、多态&#xff09;。它指的是将数据&#xff08;属性&#xff09;和操作这些数据的方法&#xff08;函数&#xff09;结合成一个独立的单元&#xff08;类&#xff09…

Perl 基础语法精讲:变量、操作符与控制结构

Perl 基础语法精讲&#xff1a;变量、操作符与控制结构 第1节&#xff1a;Perl 语法基础 1.1 Perl 语法的基本概念 Perl 是一种解释型的高级脚本语言&#xff0c;广泛用于文本处理、系统管理任务等。 1.2 语法结构和编码风格 使用 # 注释代码。遵循良好的编码风格&#xf…

使用嵌入式知识打造智能手环:nRF52蓝牙开发实战(C++/BLE/传感器)

项目概述 现代人越来越注重健康管理&#xff0c;智能穿戴设备应运而生。本项目旨在利用低功耗蓝牙芯片nRF52832&#xff0c;结合加速度计、心率传感器、陀螺仪等传感器&#xff0c;开发一款功能完善、性能稳定的智能运动手环。该手环能够实时采集用户的运动数据和生理指标&…

用MATLAB绘制三向应力圆

% 定义主应力值 sigma1 100; % MPa sigma2 50; % MPa sigma3 -33; % MPa sigma_m1(sigma1 sigma3)/2; sigma_m2(sigma1 sigma2)/2; sigma_m3(sigma2 sigma3)/2; % 计算半径 r1 (sigma1 - sigma3) / 2; r2 (sigma1 - sigma2) / 2; r3 (sigma2 - sigma3…

《mysql篇》--JDBC编程

JDBC是什么 JDBC就是Java DataBase Connectivity的缩写&#xff0c;翻译过来就很好理解了&#xff0c;就是java连接数据库。所以顾名思义&#xff0c;JDBC就是一种用于执行SQL语句的JavaApl&#xff0c;是Java中的数据库连接规范。为了可以方便的用Java连接各种数据库&#xff…

中国高端水果元宇宙

果蔬&#xff0c;即水果和蔬菜&#xff0c;是人类饮食中不可或缺的一部分。它们富含维生素、矿物质、膳食纤维以及抗氧化剂等对人体健康至关重要的营养素。果蔬的摄入被广泛认为是预防多种慢性疾病&#xff0c;如心血管疾病、糖尿病、肥胖和某些癌症的有效手段。 ###水果的特点…