1、我们用l代表最长平台的长度,用k指示最长平台在数组b中的起始位置(下标)。用j记住局部平台的起始位置,用i指示扫描b数组的下标,i从0开始,依次和后续元素比较,若局部平台长度(i-j)大于l时,则修改最长平台的长度k(l=i-j)和其在b中的起始位置(k=j),直到b数组结束,l即为所求。

void Platform (int b[ ], int N)

//求具有N个元素的整型数组b中最长平台的长度。

{l=1;k=0;j=0;i=0;

while(i

{while(i

if(i-j+1>l) {l=i-j+1;k=j;} //局部最长平台

i++; j=i; } //新平台起点

printf(“最长平台长度%d,在b数组中起始下标为%d”,l,k);

}// Platform

2、约瑟夫环问题(Josephus问题)是指编号为1、2、 ,n的n(n>0)个人按顺时针方向围坐成一圈,现从第s个人开始按顺时针方向报数,数到第m个人出列,然后从出列的下一个人重新开始报数,数到第m的人又出列, ,如此重复直到所有的人全部出列为止。现要求采用循环链表结构设计一个算法,模拟此过程。

#include

typedef int datatype;

typedef struct node

{datatype data;

struct node *next;

}listnode;

typedef listnode *linklist;

void jose(linklist head,int s,int m)

{linklist k1,pre,p;

int count=1;

pre=NULL;

k1=head; /*k1为报数的起点*/

while (count!=s) /*找初始报数起点*/

{pre=k1;

k1=k1->next;

count++;

}

while(k1->next!=k1) /*当循环链表中的结点个数大于1时*/

{ p=k1; /*从k1开始报数*/

count=1;

while (count!=m) /*连续数m个结点*/

{ pre=p;

p=p->next;

count++;

}

pre->next=p->next; /*输出该结点,并删除该结点*/

数组的最长平台c语言,2010台湾省C语言版高级相关推荐

  1. 信息学奥赛一本通 1116:最长平台 | OpenJudge NOI 1.9 12:最长平台 | 洛谷 B2097 最长平台

    [题目链接] ybt 1116:最长平台 OpenJudge NOI 1.9 12:最长平台 洛谷 B2097 最长平台 [题目考点] 1. 数组中做统计 2. 求最大值 [解题思路] 解法1:遍历并 ...

  2. 信息学奥赛一本通(1116:最长平台)

    1116:最长平台 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 48810     通过数: 16449 [题目描述] 已知一个已经从小到大排序的数组,这个数组 ...

  3. 最长平台(信息学奥赛一本通-T1116)

    [题目描述] 已知一个已经从小到大排序的数组,这个数组的一个平台(Plateau)就是连续的一串值相同的元素,并且这一串元素不能再延伸.例如,在 1,2,2,3,3,3,4,5,5,6中1,2-2,3 ...

  4. 跳跃回溯____寻找最长平台

    已知一个已经从小到大排序的数组,这个数组中的一个平台就是连续的一串值相同的元素.例如在1,2,2,3,3,3,4,5,5,6中1, 2.2, 3.3.3, 4, 5.5, 6都是平台.尝试编写一个程序 ...

  5. 单词分析 题目描述 小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。

    题目描述 小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度.小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪 ...

  6. 二维数组c语言矩阵加法,C 语言实例 – 两个矩阵相加 - C 语言基础教程

    C 语言实例 使用多维数组将两个矩阵相加. #include int main(){ int r, c, a[100][100], b[100][100], sum[100][100], i, j; ...

  7. c语言一维数组逆序输出_剑指信奥 | C 语言之兵人来袭!

    趣乐博思剑指信奥系列 ❝ 趣乐博思剑指信奥系列,专门针对全国青少年信息学奥林匹克联赛 NOIP 而开展的专业教育方案.开设的课程有 C 语言基础,C++ 语言基础,算法设计入门与进阶,经典试题分析与详 ...

  8. 算法 求一个数组的最长递减子序列 C

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! //** ...

  9. Java输出数组中最长递增子序列的代码

    下面内容是关于Java输出数组中最长递增子序列的内容,希望对大伙有较大用途. package com.wzs;import java.util.ArrayList; import java.util. ...

最新文章

  1. JSP自定义标签rtexprvalue属性
  2. 图像像素点赋值_医学图像处理教程(五)——医学图像边缘检测算法
  3. Laravel 框架安装
  4. 浅谈线程池(下):相关试验及注意事项
  5. vue实现卡片式上下滑动_基于Vue.js仿制探探卡片左右滑动特效
  6. Kaggle知识点:时序数据与Embedding
  7. 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)...
  8. 计算机二级access模考软件_计算机二级考前通关大礼包来啦!各科目模考软件、视频教程,更有往年真题、最新考纲等打包送!...
  9. centos yum安装_centos7上yum安装碰到的坑
  10. C++新标准——C++1x
  11. day15-CSS内容补充之overflow
  12. PLC系统的选型以及应用方法
  13. 饥荒联机版把服务器删掉了怎么找回,饥荒联机服务器角色存档删除 | 手游网游页游攻略大全...
  14. 《信息安全技术—个人信息安全影响评估指南》pdf下载
  15. 【软件测试管理与实践-软件质量】
  16. java根据经纬度获取地址信息
  17. 4-3 Vue的`:style`用法
  18. 【前端面试】Part 1:2020届初级前端校招笔试题及面经总结 —— 基础知识题
  19. vue-echarts绘制地图轮廓
  20. 腾讯云ubuntu安装桌面

热门文章

  1. 甲骨文中国公司如何如何打赢这场裁员翻身仗?
  2. 【转】linux tar.gz zip 解压缩 压缩命令
  3. FFmpeg AVCodecContext结构体debug变量剖析
  4. “物联网+云平台”的实验室管理方案,瞄准的是生物医药和化工行业
  5. 《TCP/IP具体解释》读书笔记(18章)-TCP连接的建立与中止
  6. jQuery-1.9.1源码分析系列(六) 延时对象应用——jQuery.ready
  7. Effective 笔记
  8. 对于一个管理性的软件来讲,数据主键的产生策略是很关键的一点,这个关系到整个系统的基础架构思想。...
  9. C#中的代理(Delegate)
  10. 使用Linq判断DataTable数据是否重复