信奥专题

基础算法--递推算法[信奥一本通]

本节所讲题源自【信奥一本通】C++版:基础算法-第三章-递推算法 相信大家应该都接触过数列的概念。哎哟,一直在跟数组打交道,说数列感觉好陌生,哈哈。数列中的迭代法大家都还记得吗:通过反复应用特定规则,推导出某一点起始的连续的后续数列。 我们的递推也是这样,给出一些初始值,从题目中找出后续数据应该与已知数据存在哪些关系,能不能写出一个公式或者经过同种操作进行反复推导,得出结论。在数学中

算法学习014 0-1背包问题 c++动态规划算法实现 中小学算法思维学习 信奥算法解析

目录 C++0-1背包 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、运行结果 五、考点分析 六、推荐资料 C++0-1背包 一、题目要求 1、编程实现 有 N 件物品和一个容量为 M的背包,每件物品有各自的价值且只能被选择一次,要求在有限的背包容量下,装入的物品总价值最大。 2、输入输出 输入描述:第一行输入两个整数,分别表示

打卡信奥刷题(20)用Scratch图形化工具信奥B3756 [信息与未来 2021] 幸运数字

本题的基础是进制转换,关于2进制转换可以参考打卡信奥刷题(19)用Scratch图形化工具信奥B3972 [语言月赛 202405] 二进制 题解 知道了2进制,来实现5进制、7进制、9进制是一样的。 [信息与未来 2021] 幸运数字 题目描述 如果⼀个正整数 n n n 在五进制、七进制、九进制的表⽰下都没有数字 0 0 0,我们就称 n n n 是幸运数字。例如: ( 98

打卡信奥刷题(19)用Scratch图形化工具信奥B3972 [语言月赛 202405] 二进制 题解

进制转换是经典的编程题,尤其是10进制转换为2进制。方法是拿给定的数,不断地除2,将余数放在对应的位置,剩下的数为对应数除2向下取整 [语言月赛 202405] 二进制 题目描述 在介绍十进制转二进制的篇目中,我们总会看到这样的方法: 求出这个数字除以 2 2 2 的商和余数,然后将余数写在右侧,用商替换原来的数字;重复以上过程直到这个数字变为 0 0 0;最后将右侧的所有余数倒序排列

算法学习012-不同路径 c++动态规划算法实现 中小学算法思维学习 信奥算法解析

目录 C++不同路径 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、运行结果 五、考点分析 六、推荐资料 C++不同路径 一、题目要求 1、编程实现 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Fini

算法学习008-登山爬石梯 c++动态规划/递归算法实现 中小学算法思维学习 信奥算法解析

目录 C++登山爬石梯 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C++登山爬石梯 一、题目要求 1、编程实现 小明周末和朋友约好了一起去爬山,来到山下,发现登山道是由石头铺成,每一段会有向上铺的石阶,然后是一段平路,如此反复,直到山顶。刚好最近在学c++编程,就想到小兔子老

信奥数据“信息差”,让你惊掉下巴!

✅ 信奥红利分析 暑假信奥赛即将到来,在全国各地赛事也越来越受到重视,但是似乎关于红利这一块各地如何,并没有太多的老师给各位家长分析清楚。 那么今天曹老师就主要给从各位新手家长分析一下信奥红利地区,在开始分析之前请大家看好上面的图记住自己在第几梯队。 ✅ 年龄红利分析 以2023年CSP-J普及组复赛获奖分析为例,在分析之前,先知道几个要素:

算法学习002-填数游戏 中小学算法思维学习 信奥算法解析 c++实现

目录 C++填数游戏 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C++填数游戏 一、题目要求 1、编程实现  在小学奥数中经常会看到一些填数字的游戏,如下图所示,其中每个汉字代表一个不同的数字,要求计算出这些汉字分别代表哪个数字 2、输入输出 输出描述:输出相应的算式

算法学习001-圆桌问题 中小学算法思维学习 信奥算法解析 c++实现

目录 算法学习001-圆桌问题 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 算法学习001-圆桌问题 一、题目要求 1、编程实现 圆桌边围坐着2n个人,其中n个人是好人,另外n个人是坏人。从第一个人开始数,数到第m个人,立即赶走该人;然后从被赶走的人之后开始数,再将数到的第m个

C/C++信奥基础

[2024/04/14] 数组 在C语言中,数组是一个存储相同类型元素的固定大小的顺序集合。 定义数字的类型,长度 数组是一个相同类型的连续变量集合 下标从0开始 int a[5] ,下标从0,第一个空间访问a[0]最后一个元素是a[4] 在声明的时候定义数组: int arr[5] = {1, 2, 3, 4, 5}; // 定义一个有5个元素的整数数组,并初始化 先声明,后定义:

信奥一本通:1090:含k个3的数

题目的意思先读懂,例如 43833 3  刚好我们输入的这串数字里面3的数量是我们第二个数的对于,假如我们第二个数是4,那么这个数字就不成立了,这个题目要求看明白了。接下来就是求答案了,他要算出里面有多少个3,我们就只能依次从这个大的数字里面剖析出来,做法就是取余加除掉 #include <iostream>using namespace std;int main(){int m,k;

信奥一本通:1089:数字反转

这道题的难度在于如何去颠倒这三位数,并且在0的情况下将0删除掉,大家可以看下代码,文字不好解释 #include <iostream>using namespace std;int main(){int n;cin >> n;int m = 0;do{//不乘10的话就会相加个位数字//可以将数据放入自己进行推算一下 m = m * 10 + n % 10;n /= 10;} whi