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

【NOIP】小鱼的数字游戏题解

author:&Carlton

tag:递归,栈

topic:【NOIP】小鱼的数字游戏题解

language:C++

website:洛谷

date:2023年7月29日


目录

我的题解思路

优化

别人的优秀思路:


我的题解思路

        题目要求的数据很弱:

        ①数字大小范围小,int范围够

        ②数字数量少,有限数量用静态数组可以简单表示

        

        所以用数组存储数据,然后逆序输出即可。

源代码

#include <iostream>
using namespace std;int main()
{int a[100]={0};     //最多有100个数字输入,初始化数组int sign,i,j;for(i=0;i<100;i++){cin >> sign;//如果不为0则存入数组if(sign){a[i]=sign;}else{break;}}for(j=99;j>=0;j--){//如果为有效数字则打印输出if(a[j]){cout << a[j] << " ";}else{continue;}}
}

优化

        在结束break时可以记录当前数组位置,逆序输出时在标记处开始。

别人的优秀思路:

       

        要求数据后进先出,套用数据结构栈解决问题。

        empty()判断栈是否为空
        push(x)把x压入栈
        top()返回栈顶元素
        pop()弹出栈顶第一个元素
#include <bits/stdc++.h>
using namespace std;
int main(){stack<int> s;//定义一个栈while (1){int a;scanf("%d",&a);if (!a) break;//判断是否结束s.push(a);//将a压入栈}while (!s.empty()){cout<<s.top();//输出栈顶元素printf(" ");s.pop();//栈顶第一个元素出战}cout<<"\n";//换行别理它=-=return 0;
}

欢迎指正与分享,谢谢!

http://www.lryc.cn/news/100257.html

相关文章:

  • 算法的时间复杂度、空间复杂度如何比较?
  • We are the Lights 2023牛客暑期多校训练营4-L
  • ant-design-vue中table组件使用customRender渲染v-html
  • 若依框架实现后端防止用户重复点击
  • PCA对手写数字数据集的降维
  • Python入门【变量的作用域(全局变量和局部变量)、参数的传递、浅拷贝和深拷贝、参数的几种类型 】(十一)
  • 下级平台级联安防视频汇聚融合EasyCVR平台,层级显示不正确是什么原因?
  • vue : 无法加载文件 C:\Users\jianfei\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。...
  • godot引擎c++源码深度解析系列二
  • 专才or 通才
  • 【小白必看】Python爬虫实战之批量下载女神图片并保存到本地
  • 道本科技||全面建立国有企业合规管理体系
  • CentOS 8上安装和配置Redis
  • 西北乱跑娃 -- CSS动态旋转果冻效果
  • 解决安装office出现1402错误和注册表编辑器无法设置安全性错误
  • Jmeter接口自动化生成测试报告html格式
  • 移动IP的原理
  • uView 在 uni-app 中的使用
  • netcat和netstat使用
  • mybatisPlus高级篇
  • Rust之包、单元包及模块
  • 内存函数讲解
  • C语言假期作业 DAY 01
  • 2023牛客暑期多校-J-Qu‘est-ce Que C‘est?(DP)
  • 【141. 环形链表】
  • ORB特征笔记
  • 12.Netty源码之整体架构脉络
  • 【ArcGIS Pro二次开发】(54):三调名称转用地用海名称
  • 3D Tiles官方示例资源下载链接
  • 【Java】分支结构习题