K阶斐波那契数列--------西工大NOJ习题.10

西工大NOJ数据结构理论——010.k阶斐波那契数列(严3.32) 阅读详情

K阶斐波那契数列--------西工大NOJ习题.10

原创不易,转载请说明出处!!!

科普:k阶斐波那契数列的0到n-1项需要有初始值。

其中,0到n-2项初始化为0,第n-1项初始化为1.

在这道题目中,所引用的函数详见:数据结构实现——循环队列

(我的一篇博文)

我使用的方法是尺取法,这样可以大大地减小时间复杂度。

具体见代码:

#include <stdio.h>
#include <stdlib.h>
typedef int Elem;
typedef struct Queue
{
    Elem *data;
    int head;
    int tail;
    int size;//仅仅是一个功能,程序的判空,判断满并不依赖。
    int MAX_SIZE;//是真正申请的最大值,实际存放MAX_SIZE-1个。
}Queue;
//函数原形声明
Queue *Creat(int max);
int Size(Queue* Q);
Elem GetTail(Queue *Q);
Elem GetHead(Queue *Q);
int Pop(Queue *Q);
int Push(Queue *Q, Elem e);
int Full(Queue* Q);
int Empty(Queue *Q);
int Destroy(Queue* Q);



Queue *Creat(int max)
{
    if(max <= 0)
        return NULL;
    Elem *D = (Elem*)calloc(max + 1, sizeof(Elem));
    if(!D)
        return NULL;
    Queue *Q = (Queue*)malloc(sizeof(Queue));
    if(!Q)
    {
        free(D);
        return NULL;
    }
    Q->MAX_SIZE = max + 1;
    Q->data = D;
    Q->head = 0;
    Q->tail = 0;
    Q->size = 0;
    return Q;
}

int Destroy(Queue* Q)
{
    if(!Q)
        return 0;
    free(Q->data);
    free(Q);
    return 1;
}
int Empty(Queue *Q)
{
    if(Q->head == Q->tail)
        return 1;
    else
        return 0;
}
int Full(Queue* Q)
{
    if((Q->tail+1)%Q->MAX_SIZE == Q->head)
        return 1;
    else
        return 0;
}

int Push(Queue *Q, Elem e)
{
    if(Full(Q))
       return 0;
    Q->data[Q->tail] = e;
    Q->tail = (Q->tail + 1)%Q->MAX_SIZE;
    Q->size += 1;
    return 1;
}

int Pop(Queue *Q)
{
    if(Empty(Q))
        return 0;
    Q->head = (Q->head + 1) % Q->MAX_SIZE;
    Q->size -= 1;
    return 1;
}

Elem GetHead(Queue *Q)
{
    if(Empty(Q))
    {
        *(int *)NULL;//专门让程序crash
    }
    return Q->data[Q->head];
}
Elem GetTail(Queue *Q)
{
    if(Empty(Q))
    {
        *(int *)NULL;//专门让程序crash
    }
    int t;
    t = Q->tail;
    t -= 1;
    if(t >= 0)
        return Q->data[t];
    else
    {
        return Q->data[Q->MAX_SIZE-1];
    }
}
int Size(Queue* Q)
{
    return Q->size;
}

int main()
{
    int max, n;
    scanf("%d%d",&max, &n);
    int sum = 0;//使用尺取法
    Queue* Q = Creat(n);//指定大小为n.
    for(int i = 1; i <= n; i++)//先在队列中塞下前n项
    {
        if(i < n)
            Push(Q,0);
        else
            Push(Q,1);
    }
    sum = 1;//初始化n项的和
    while(sum<=max)//当要增加的小于等于最大值时,继续算.
    {
        int tmp = sum;//前一时刻的sum和
        sum -= GetHead(Q);
        Pop(Q);
        sum += tmp;//更新sum,为下一次做准备
        Push(Q,tmp);
    }
    for(int i = 1; i <= n; i++)//依次输出
    {
        printf("%d ",GetHead(Q));
        Pop(Q);
    }
    Destroy(Q);//销毁循环队列.
    return 0;
}

NOJ——西北工业大学C语言练习(2) NOJ 11-20题 循环 阅读详情

相关推荐

从OJ题解到工程实践:Python编程思维与实战技能提升指南

在编程学习与工程实践中,算法思维和代码质量是开发者必须掌握的核心能力。理解数据结构与算法的基本原理,如哈希表、递归、动态规划等,能够显著提升问题解决效率。这些基础概念在数据处理、系统优化等场景中具有广泛的技术价值。通过在线评测系统(OJ)的题目训练,开发者可以系统性地锻炼逻辑思维和编码能力。本文聚焦Python编程中的工程化实践,探讨如何将OJ解题技能转化为实际项目经验。内容涵盖字符串处理、文件操作、模块化设计等热词,并结合虚拟环境配置、代码重构等高频搜索关键词,提供从学习到实战的完整路径,帮助读者构建可迁

chuange6363的博客 419

【数据结构】NOJ009—循环队列

题目简述: 解析: 建立一个结构体即可。里边有可变长度的int数组用来存数据,设置头节点,尾节点,长度length表明队列目前有多少个元素,MaxLen表明队列最大长度。 重点: (1)注意头指针与尾指针的关系; (2)注意出队列和入队列时frot和rear的变换要除以MaxLen取余; 代码 #include <iostream> #include<stdio.h> #include<malloc.h> using namespace std;

杨的博客 534

图论:Dijkstra算法——最详细的分析,图文并茂,一次看懂!

Dijstra算法

普罗米修斯的博客 18万+

西工大--人工智能程序设计noj--前60道

西工大-人工智能程序设计noj-前60道-2022-秋

weixin_52999035的博客 3924

fMRI独立成分分析方法(ICA)工具GIFT

详细介绍了进行fmri数据进行ICA分析的工具包GIFT的使用,和进行ICA分析的流程。

m0_58256026的博客 1万+

BUCK降压电路设计实战:从理论到PCB的完整指南

本文详细介绍了BUCK降压电路的设计实战,从基础原理到PCB布局的完整指南。通过关键部件选型、PCB布局黄金法则和调试技巧,帮助工程师高效设计稳定可靠的开关电源。特别针对电感、MOSFET和电容选型提供实用公式和避坑指南,并分享高温环境下的工程经验与测试方法。

weixin_33744141的博客 455

西工大NOJ 数据结构理论——009.循环队列(严3.30)

西工大NOJ 数据结构理论——009.循环队列(严3.30)

a15735748145a的博客 2297

dbt+Snowflake实战:数据建模、权限隔离与性能优化全指南

dbt(data build tool)作为现代数据栈的核心建模工具,其与Snowflake的深度协同远不止于SQL编译执行——它本质是将软件工程实践(如版本控制、测试驱动、CI/CD)注入数据交付流程。理解dbt的声明式建模原理与Snowflake的虚拟仓库、Time Travel、TRANSIENT表、聚簇键等底层机制如何咬合,是实现可维护、可审计、低成本数据产品交付的关键。本文聚焦dbt在Snowflake环境中的真实落地挑战,涵盖schema与warehouse的物理映射设计、role级硬隔离策略、

weixin_34389926的博客 314

西北工业大学NOJ数据结构—017输出以二叉树表示的算术表达式

这个题和上一个基本完全相同,同样是按照先序来输入一个带特殊字符的字符串来创建二叉树,然后直接用中序输出就ok了,中序输出也用递归就好思路就不分析了,直接上代码ojbk,就酱(づ ̄3 ̄)づ╭❤~#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; struct BinTree { //定义二叉链表来储存二叉树 char data;...

npuyan的博客 1062

遥感大模型的深度学习从CNN到Vision Transformer以及混合架构的演进之路

深度学习,特别是以卷积神经网络(CNN)和Transformer为代表的“大模型”技术,正以其强大的表征学习能力,深刻地重塑着遥感智能解译的整个技术栈与认知范式。本文将系统性地梳理遥感大模型从局部卷积的奠基,到全局注意力的革命,再到二者融合的混合架构演进这一波澜壮阔的历程。我们将深入剖析每个阶段的核心技术原理,结合遥感数据特性与实际应用案例,详细阐述其在分类、检测、分割等核心任务中的具体应用。

panshengwu的博客 1142

应广单片机 按键点灯 PMS171B GPIO LED

我也是第一次使用这款单片机,参考网友的资料,写个最近简单的demo 测试用例 #include "extern.h" /*端口定义*/ BIT KEY : PA.0; BIT SW : PA.4; /*相应于main函数*/ void FPPA0 (void) { /*单片机内部RC震动时钟为 IHRC默认为16M,因此,IHRC/2=8M,系统时钟为8M*/ .ADJUST_IC...

大江的专栏 1000

西北工业大学NOJ数据结构—008逆波兰式

本题为将一个中缀表达式转化为逆波兰式,同样为栈的应用,以下为原题(づ ̄3 ̄)づ╭❤~有必要解释以下逆波兰式,其实就是后缀表达式,也就是计算机计算时识别的语言,比如上方的ab+c*,那么计算机就依次读取,a、b然后+,之后就可以计算a+b,然后c、*,也就是把a+b的和与c相乘,稍微详细一点的逆波兰式推荐知乎搜索:逆波兰式到底是什么鬼(虽然提问者有点睿智,但是几个回答者都是dalao),那么下面为题...

npuyan的博客 4678

基于51单片机的智能台灯设计:嵌入式程序设计实现

随着智能家居和物联网的快速发展,智能台灯作为一种典型的智能家居产品,已成为现代家庭中不可或缺的设备。传统的台灯只能提供简单的照明功能,而智能台灯不仅具备基础的照明功能,还能根据用户的需求进行自动调节,比如自动调节亮度、色温,甚至具备定时开关、远程控制等智能功能。本文将介绍如何基于51单片机设计一款智能台灯。我们将涉及硬件设计、嵌入式系统架构、传感器选择、调光控制、语音识别、远程控制等方面,详细阐述如何实现这些功能,并给出相关的代码和实现步骤。

2201_76125393的博客 836

『西工大-数据结构-NOJ』 010-k阶斐波那契数列(严3.32) 『西北工业大学』

解题思路: 这道题要求使用循环队列求斐波那契数列不大于max的最后k项的值。 循环列表通常情况包含以下结构: typedef struct node{ int *data; int front; int rear; int N; }Queue; void CreatQueue(Queue *Q, int n) void AddElem(Queue *Q, int num) int Pop(Queue *Q) int Push(Queue *Q) 这道题,难道..

LanXiu_的博客 2068

在 SAP 里玩转 FTP:标准程序 RSFTP00x 全景解析与落地实践

摘要:SAP系统通过封装的标准FTP程序(RSFTP001-008)提供便捷的文件传输能力,适用于各类集成场景。关键点包括:1)依赖SAPFTP可执行程序和RFC目的地;2)使用RSFTP005进行前置检查并生成RFC配置;3)标准报表各司其职,如RSFTP002用于命令测试、RSFTP007/008提供参考实现;4)开发时组合FTP_CONNECT/COMMAND/DISCONNECT等函数模块。特别注意前台(SAPFTP)与后台(SAPFTPA)的环境差异,这是常见故障点。该方案通过标准化工具链显著降低

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 210

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

人工智能程序设计-高级Python程序设计-西工大-noj前60道

详细分析了西工大noj前60道题的做法思路,所涉及到的知识点、语法和算法知识都有介绍,并附上包含详细注释的AC代码和每道题的题目描述图片,既适合直接复制粘贴以求快速AC,又适合潜心钻研,学习Python语法和算法知识。

m0_49562974的博客 3021

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

西北工业大学NOJ Python程序设计作业91-100

第10季:挑战算法(Season 10-Challenges)(91-100) 前置知识点 这部分主要是运用前面的知识来实现算法题目,没有前置知识点。这部分题目比较简单,主要考察算法思路和代码规范。 镜像字符 镜像要求就是ord(′a′)+ord(′z′)=ord(′b′)+ord(′y′)=...ord('a')+ord('z')=ord('b')+ord('y')=...ord(′a′)+ord(′z′)=ord(′b′)+ord(′y′)=...,所以算出t=ord(′a′)+ord(′z′)t=

Phoenix_ZengHao的博客 8881

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

K阶斐波数列

在C++语言的学习中,函数的声明、定义以及调用是整个学习时期的核心。其中在函数的调用中又有一种特殊的调用----递归调用。递归又分为直接地鬼调用和间接递归调用,所谓直接递归指在定义函数的过程中又调用该函数;而间接递归调用指在a函数中调用b函数,在b函数中又调用a函数。 递归式从结果出发,归纳出后一结果与前一结果直到初值为止存在的关系。 在此以1阶斐波数列为例; ...

guojiguo的博客 248

西北工业大学cpSkill平台Python作业NOJ(21-30)

仅供参考 前20传送门:https://blog.csdn.net/weixin_43520256/article/details/109137288 41-50传送门: 61-70传送门: 71-80传送门: 81-90传送门: # # 21 # # 阶乘末尾 0 的个数 # # def fac(n): # # temp = 1 # # while n > 0: # # temp *= n # # n -= 1 # # return temp

weixin_43520256的博客 3555

『西工大-数据结构-NOJ』 002-线性表的就地逆置(耿2.9) 『西北工业大学』

解题思路: 这道题要求用数组和单链表两种储存形式完成线性表就地逆置的算法,即只能有常数量级的空间开销。 数组的拟制很简单,就从中间分开前后交换,注意元素个数为奇偶时中间位置的计算。 单链表采用头插法,将原链表顺序插入即的到其逆序结果,画图可使链表算法更好理解。 具体操作见代码,代码中有部分注释。 题解代码: #include <stdio.h> #include <stdlib.h> //以数组作为储存结构 void CreatArray(int n, int A[]){//创..

LanXiu_的博客 2911

西北工业大学NOJ数据结构—011循环右移

这个题......不知道是不是我理解错了......反正我觉得可能是所有作业中最简单的一个(真)大概说一下思路1.用附加储存记录下最后一个元素,把之前的所有元素向右移动一个,最后把记录下的数值赋值到第一个位置2.循环k次....没了  就酱 上代码(づ ̄3 ̄)づ╭❤~#include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; typedef struct a...

npuyan的博客 2045

西北工业大学NOJ数据结构—009循环队列

本题为循环队列的应用,所谓循环队列,就......循环的队列 呗循环队列可以在有限的队列空间,来回进队列出队列,可以节约大量的储存空间——因为队列只能从一端进入从另一端弹出,所以若是进进出出(滑稽),就会使弹出队列的元素原来占有的位置不能再次被利用但是由于要求使用rear队尾和length长度作为标志,其实可以与使用rear队尾和front队头作为标志相对比,即(front+length)%max...

npuyan的博客 2846

西工大-2019-第四题

从M开始找到第n个质数; 例如输入: 4 3 输出:5 7 11 #include<iostream> #include<cstdio> using namespace std; int judge(int a) { int k=1; for(int i=2;i<a;i++) { if(a%i==0) ...

weixin_44502835的博客 949

【数据结构--noj】k阶斐波那契数列

这个题目有陷阱!!! k阶并不是两个的和了,而是k个的和 这就是为什么wa了五次的原因qwq(我好笨) for(i=0;i<length;i++){ sum+=elem[(front-i+length)%length]; } 除此之外没有什么问题了,移动front就行了 #include <iostream> using namespace std; //注意k一定要大于等于2 //初始化时,要把f(1)和f(2)入队 //front 指向..

qq_45822589的博客 981

【数据结构】NOJ010 k阶斐波那契数列

这是我去年五月份写的这道题:【数据结构】NOJ010 k阶斐波那契数列 下面是我今年三月份写的这道题:

夏至是个程序媛 992

NOJ数据结构010——k阶斐波那契数列

k阶斐波那契数列简要描述: 第0项到k-2项为0,第k-1项为1,之后每项都为前k项的和。 代码如下: #include <stdio.h> #include <stdlib.h> typedef struct { int *data; int front; int rear; int n; }SeqQueue; SeqQueue *seq; SeqQueue* CreateQueue(int k); //创建队列 int .

weixin_53068269的博客 767
上一篇: 数据结构实现——循环队列
下一篇: 杨辉三角的打印---------数据结构典型例题
xjsc01
博客等级 码龄5年 170粉丝 103原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值