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

广告投放平台代理seo网络培训

广告投放平台代理,seo网络培训,垣宝建设工程集团网站,做网站游燕牛客网 BC156 牛牛的数组匹配 题目描述 描述 牛牛刚学会数组不久,他拿到两个数组 a 和 b,询问 b 的哪一段连续子数组之和与数组 a 之和最接近。 如果有多个子数组之和同样接近,输出起始点最靠左的数组。 输入描述: 第一行输…

牛客网 BC156 牛牛的数组匹配

题目描述

描述

牛牛刚学会数组不久,他拿到两个数组 a 和 b,询问 b 的哪一段连续子数组之和与数组 a 之和最接近。

如果有多个子数组之和同样接近,输出起始点最靠左的数组。

输入描述:

第一行输入两个正整数 n 和 m ,表示数组 a 和 b 的长度。

第二第三行输入 n 个和 m 个正整数,表示数组中 a 和 b 的值。

输出描述:

输出子数组之和最接近 a 的子数组

af44f62468f04ba78a094e22c149ee72.png

思路分析

基于滑动窗口的思想,从数组最左边开始,将连续子数组之和与numa(a数组里的总和)进行比较。

步骤流程

1.定义所需要输入的数n和m,需要输入的数组a和b,输入a数组时记得求a数组的和(numa)

2.输入完成后,开始进行循环

3.这里需要考虑一个特殊情况,就是当m==1时,就无须进行比较了,直接将b【0】输出即可。

定义left和right分别指向数组最左边的最小连续数组的下标,left=0,right=1,为了之后的方便输出,我们再定义一个cl和cr记录left和right的值。

循环的条件是left<right的同时right<m。

每一次循环:求left和right之间值的和sum,并将sum与numa的差值与min(定义的最小差值,最开始等于numa)进行比较,如果小于min,就将该值赋给min,同时将left的值赋给cl,right的值赋给cr,之后再判断sum的值是否大于numa,大于则left++,小于则right++,(防止连续子数组越来越大)

循环结束后,输出cl和cr之间的值。

完整代码

#include <stdio.h>
#include<stdlib.h>
int main() {int a[50]={0};int b[50]={0};int n=0;int m=0;scanf("%d %d",&n,&m);int suma=0;for(int i=0;i<n;i++){scanf("%d",&a[i]);suma+=a[i];}for(int i=0;i<m;i++){scanf("%d",&b[i]);}int left=0;int right=1;int cl=0;int cr=0;int min=suma;//最小差值,最开始=numaif(m==1)//m=1的情况直接输出{printf("%d",b[0]);return 0;}while(left<right&&right<m){int sum=0;for(int i=left;i<=right;i++){sum+=b[i];}if(abs(sum-suma)<min)//abs函数用来求两者之间差的绝对值{min=abs(sum-suma);cl=left;cr=right;}if(sum>suma)//判断sum与numa的情况{left++;}if(sum<suma){right++;}}for(int i=cl;i<=cr;i++)//输出{printf("%d ",b[i]);}return 0;
}

 

 

 

 

http://www.tj-hxxt.cn/news/66412.html

相关文章:

  • 网页游戏代码seo排名第一的企业
  • 做网页网站湖南seo优化
  • 江门公司做网站重庆 seo
  • 苏州哪家网站公司做的好的网络营销策划书的结构是什么
  • 江西网站制作长尾词挖掘免费工具
  • 朝阳市政府建设招标网站电脑系统优化工具
  • 交互式网站开发技术asp如何免费注册网站平台
  • 怎么提高网站流量seo推广
  • 做网站计划表新闻热点事件
  • 青岛网站开发企业seo百科大全
  • 怎样到提供电子邮件的网站注册怎么成为百度推广代理商
  • 为什么有的网站打不开 别的网站就可以打开淘宝的17种免费推广方法
  • 《网站建设方案》百度云网站入口
  • dw做网站 如何设置转动九易建网站的建站流程
  • 网站返回顶部怎么做深圳互联网公司排行榜
  • 网站建设和执纪监督流量查询网站
  • 长沙网站推广排名武汉武汉最新
  • 网站建设培训学校广州搜索引擎优化策略不包括
  • 网站引导动画怎么做的中文搜索引擎排名
  • 怎么用2级目录做网站新网站推广最直接的方法
  • WordPress教育类响应式主题重庆seo网站排名
  • phpmysql动态网站开发网站推广排名哪家公司好
  • 如何在局域网上做网站怎样让自己的网站排名靠前
  • 婚恋交友网站制作分类达人介绍
  • 班级网站开发与设计快手seo关键词优化
  • 北京网站建设方案报价网页设计模板网站免费
  • 阿里云网站目录代刷网站推广链接免费
  • 福州金山网站建设手机网站建设价格
  • 全国加盟网站建设东莞市网络seo推广企业
  • 网站 做实名认证吗网站平台有哪些