CSDN第十期竞赛

news2025/2/25 18:05:12

比赛详情:

 通过这次的周赛让我受益颇多,这次的题目都是平常练习题目的变形,这次的竞赛是十分有意义的,加强对练习题的强化。

两道模拟题:

目录

1.熊孩子拜访

2.走楼梯


1.熊孩子拜访

题目描述

已知存在一个长度为n的整数序列A,A中所有元素通过从大到小的顺序进行排序,现在执行一段序列,请你找到A序列里面的倒置序列如果A序列中不存在倒置序列,输出0 0。

思路:从前往后找到a[i]>a[i+1]的位置,然后再找到a[i]<a[i-1]的位置。

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=1e6+10;
int a[N];

int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    int ans=0,k,m;
    int i=1,j=2;
    while(a[i]<a[j]&&i<n) i++,j++;
    k=i;
    while(a[i]>a[j]&&i<n) i++,j++,ans++;
    m=i;
    if(ans==0) cout<<"0 0"<<endl;
    else cout<<a[m]<<" "<<a[k]<<endl;
    return 0;
}

2.走楼梯

题目描述 

现在有一截楼梯,根据你的腿长,你一次能走1级或者两级楼梯,已知你要走n阶楼梯才能走到你的目的地,请你算出方案数。

样例输入1

4

样例输出1

5

样例输入2

5

样例输出2

斐波拉数列的变形,我们可以发现,f(i)=f(i-1)+f(i-2),用循环模拟递归。因为数据范围比较大,int无法通过,需要开long long。

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
typedef long long ll;
int main()
{
    int n;
    cin>>n;
    ll f1=1,f2=2,f;
    if(n<=2) cout<<n;
    else
    {
        for(int i=3;i<=n;i++)
        {
            f=f1+f2;
            f1=f2;
            f2=f;
        }
        cout<<f;
    }
    return 0;
}

如果此题目改成每次可以往前迈1,2,3,也是可以继续模拟的,我们可以发现f(i)=f(i-1)+f(i-2)+f(i-3),(i>=4),代码如下:

#include<iosteam>

#include<algorithm>

#include<cstring>

using namespace std;

typedef long long ll;

int main()

{

        int n;

        cin>>n;

        ll f1=1,f2=2,f3=3,f;

        if(n<=3) cout<<n;

        else

        {

                for(int i=4;i<=n;i++)

                {

                        f=f1+f2+f3;

                        f1=f2;

                        f2=f3;

                        f3=f;

                }

                cout<<f;

        }

        return 0;

我们可以用递归的方法,但是递归需要的存储空间太大,运行不出,只能用模拟递归方法。

如果n的值比较小,那么:

int f(int n)

{

        if(n<=2) return n;

        return f(i-1)+f(i-2);

}

非常感谢CSDN组织的比赛,在这次比赛之后,我会积极学习基础算法--枚举、贪心、分治、递归、搜索,图算法--最小生成树、数的遍历、最短路径、二分图、网络流等,动态规划,数据结构--线段树,并查集,数学知识--组合数学、数论、计算几何等算法。

但是自己对一些数据结构还是不太了解,代码的速度也是很慢的,是今年7月份开始接触算法,大一完全划水,非常感谢csdn组织的比赛。

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

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

相关文章

FB显示学习期数据不足怎么办?

组合投放广告组和广告系列。组合投放广告组和广告系列有助于加快获得所需成效的速度&#xff0c;这意味着广告投放后很快便可看到稳定的成效。 扩大受众群。受众越多&#xff0c;用户完成您的优化事件的机会越多。 提高预算。如果您的预算过低&#xff0c;无法获得约 50 个​…

47、泛型

一、引入 1、传统方法&#xff1a; package generic_;import java.util.ArrayList; SuppressWarnings({"all"}) public class Generic01 {public static void main(String[] args) {ArrayList arrayListnew ArrayList();arrayList.add(new Dog("旺财",10)…

Spring项目结合Maven【实现读取不同的资源环境】

&#x1f4c3;目录跳转&#x1f4da;简介&#xff1a;&#x1f351;修改pom.xml&#x1f95e;修改application.yml&#x1f680; 演示&#xff1a;&#x1f4da;简介&#xff1a; 由于我们写功能的不能影响到线上环境的配置&#xff0c;所以每一次增加功能我们都要吧项目部署到…

STM32HAL库单ADC+DMA学习及测试记录

一、打开STM32CubeMX选择对应的芯片型号&#xff0c;后进入开发界面 1、双击“STM32CubeMX”软件打开&#xff0c;打开后如下图所示&#xff0c;选择红色框&#xff1b; 选择后可能会更新&#xff0c;等待更新完成即可&#xff0c;如下图&#xff1a; 2、选择开发芯片&#x…

【剧前爆米花--爪哇岛寻宝】面向对象的三大特性——封装、继承以及多态的详细剖析(上——继承)。

作者&#xff1a;困了电视剧 专栏&#xff1a;《JavaSE语法与底层详解》 文章分布&#xff1a;这是一篇关于Java面向对象三大特性——继承的文章&#xff0c;在本篇文章中我会分享继承的一些基础语法以及类在继承时代码的底层逻辑和执行顺序。 目录 继承 需求 继承的定义及语…

nginx(六十八)proxy模块(八)nginx与上游的ssl握手

一 nginx作为客户端与上游的SSL/TLS握手 理解上&#xff1a; nginx作为客户端,此时类似浏览器的角色,发请求建立连接 nginx作为server端与下游进行SSL/TLS握手 ① nginx与后端选择什么样的协议 1&#xff09;如果nginx与上游是局域网内,一般通过http建立请求,不需要进行…

详解__int128,最大可用整数类型

前言&#xff1a;有些题目需要的数值刚好比 long long 的最大值大那么一点点&#xff0c;那么我们就可以用__int128 来搏一搏&#xff08;并不是所有OJ都支持这个数据类型&#xff0c;受编译标准影响&#xff09; 最大值是多少 int 最大值&#xff1a;2^(32-1)-1【受电脑字长影…

碳中和专题:碳足迹核算、碳中和顶刊论文、碳排放交易2022

&#xff08;1&#xff09;碳中和顶刊论文 1、数据来源&#xff1a;自身 2、具体内容&#xff1a; 01周宏春&#xff1a;碳循环经济内涵、实践及其碳中和的深远影响.pdf 02谢和平&#xff1a;碳中和目标下煤炭行业发展机遇.pdf 03秦阿宁&#xff1a;碳中和背景下的国际绿色技…

【FPGA】基于状态机实现自动售货机模拟

文章目录一、售货机功能二、售货机状态分析及模块划分三、代码实现四、上板验证一、售货机功能 此自动售货机模拟基于EP4CE6F17C8开发板实现&#xff0c;用按键&#xff0c;led灯&#xff0c;数码管表示各个输入输出 功能&#xff1a; 此自动售货机可以选择A&#xff08;三元…

[激光原理与应用-21]:《激光原理与技术》-7- 激光技术大汇总与总体概述

目录 前言&#xff1a; 第1章 什么是激光技术 1.1 什么是激光技术 1.2 激光技术的分类方法 第2章 激光的应用技术 2.1 激光加工技术 2.2 激光快速成型 2.3 激光切割 2.4 激光焊接 2.5 激光雕刻 2.6 激光打孔 2.7 激光蚀刻 2.8 激光手术 2.9 激光武器 2.10 激光能…

详解诊断数据库ODX-D

文章目录 前言一、ODX-D具体内容是什么?二、ODX企标中关于ODX-D定义内容三、ODX-D在CANdelaStudio以及ODXStudio中定义内容总结前言 ​又是一周末,静下心码下字,将ODX这个Topic补充完整。 ODX含义是开放式诊断数据交互,是欧洲那边提出诊断数据架构,详情可如下图: 核心…

区间信息维护与查询【树状数组 】 - 原理2 多维树状数组

区间信息维护与查询【树状数组 】 - 原理2 多维树状数组 我们已经知道一维树状数组修改和查询的时间复杂度均为O (logn)&#xff0c;可以扩展为m 维树状数组&#xff0c;其时间复杂度为O (log ^m n )&#xff0c;对该算法只需加上一层循环即可。二维数组a [n ][n ]、树状数组c…

创建TCP通信与粘包问题解决

创建TCP通信 nodeJS的Net模块实现了底层通信接口 通信过程 创建服务端&#xff1a;接收和回写客户端数据创建客户端&#xff1a;发送和接收服务端数据数据传输&#xff1a; 内置服务事件和方法读写数据 通信事件 listing事件&#xff1a;调用server.listen方法之后触发con…

介绍 10 个有用的 Flutter 软件包

介绍 10 个有用的 Flutter 软件包 原文 https://genotechies.medium.com/introducing-10-useful-flutter-packages-1252c4b75fa7 前言 FLutter 软件包使您的开发简单快速。然而&#xff0c;有利有弊。有时候&#xff0c;如果从头开始开发这个特性将是有益的&#xff0c;因为可定…

Hive日分区表如何快速导入到StarRocks

1、背景 业务现状&#xff1a;集团使用FineBI做数据呈现及报表分析工具&#xff0c;经过近两年的BI建设&#xff0c;供应链域及营销域的BI建设已初具规模并体系化。数仓规模60TB&#xff0c;FineBI数据集约8000个&#xff0c;BI挂出报表数约1600个&#xff0c;报表月增幅在40左…

非凡社群管理之社群管理有什么内容

社群作为一个非常重要的私域流量池&#xff0c;它本身就是一个提升用户价值的利器。但如果管理不好社群&#xff0c;那么也是无济于事的。 社群小助手提示&#xff1a;高效管理社群&#xff0c;以下这五个方面要做好。 一&#xff0c;社群为用户解决问题&#xff0c;让群成员都…

iwebsec靶场 SQL注入漏洞通关笔记6- 宽字节注入

系列文章目录 iwebsec靶场 SQL注入漏洞通关笔记1- 数字型注入_mooyuan的博客-CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记2- 字符型注入&#xff08;宽字节注入&#xff09;_mooyuan的博客-CSDN博客 iwebsec靶场 SQL注入漏洞通关笔记3- bool注入&#xff08;布尔型盲注&#…

【ML特征工程】第 7 章 :通过K-Means 模型堆叠进行非线性特征化

&#x1f50e;大家好&#xff0c;我是Sonhhxg_柒&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f4dd;个人主页&#xff0d;Sonhhxg_柒的博客_CSDN博客 &#x1f4c3; &#x1f381;欢迎各位→点赞…

计算机视觉之目标检测(object detection)《1》

在计算机视觉领域&#xff0c;除了识别图像并分类之外&#xff0c;我们很多时候想关注图像里面一些感兴趣的目标&#xff0c;比如视频监控中寻找一个或多个嫌疑犯&#xff1b;无人驾驶需要识别车辆、行人、红绿灯、路障等等&#xff0c;都是需要去及时掌握画面中的不同目标。我…

古瑞瓦特能源通过聆讯:上半年营收23亿 IDG投资9亿持股6.5%

雷递网 雷建平 11月26日古瑞瓦特能源&#xff08;简称&#xff1a;“Growatt Technology”&#xff09;日前递交招股书&#xff0c;准备在香港上市。上半年营收23.45亿古瑞瓦特能源于2011年在深圳成立&#xff0c;是一家分布式能源解决方案提供商&#xff0c;专注于可持续能源发…