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

丽水市网站建设登录网站模板

丽水市网站建设,登录网站模板,个人网站需要什么页面,方案查一查网站牛客网 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.yayakq.cn/news/867172/

相关文章:

  • 网站项目建设措施传奇版本网页游戏
  • 做贸易网站深圳网络营销推广公司
  • 一家专门做内部优惠的网站天津 网站 备案
  • 做网站的公司首选智投未来广州市网站建设 乾图信息科技
  • 有哪个理财网站是专门做汽车抵押的阿里云网站主体变更怎么做
  • 网络营销的网站二手网站模板
  • 酒店网站建设方案ppt怎么生成网页链接
  • google建立网站深圳建设网站的公司
  • 室内设计联盟官方网站登录莱芜网站建设哪家好
  • 企业为什么需要手机网站注册网站在哪里创建
  • 网站改了title 删除百度就的收录长沙建设信息中心网站
  • 网站开发安全管理wordpress当前网址
  • 儋州个人建站哪家好徽章设计制作小程序
  • 国内开源网站工程建设
  • 网站开发+兼职项目怎样做平台推广
  • 精美静态网站源码WordPress企业显示
  • 郑州网站制作的公司黄埔区网站建设
  • 网站网站开发犯法吗企业电子邮箱怎么申请注册
  • 表白网站在线生成免费网站建设需要的服务器
  • 陕西网站建设推广公司广告网站模板免费下载
  • 做网站在线支付系统多少钱?wordpress插件扫描
  • 网站建设与制作外包服务网站建设与管理维护 李建青
  • 大淘客cms网站怎么做wordpress 评价 插件
  • 凌晨三点看的片韩国电商seo推广
  • wordpress图片体积sem推广优化
  • 高中生做网站python做的网站源码
  • 江门模板建站定制网站如何制作网址域名
  • 信息网站建设方案怎样制作网站教程哪家好
  • 久久营销网站内蒙古城乡建设厅网站
  • 网站后台培训学校廊坊seo关键词