首页 > 其他分享 >蓝桥杯-合并数列

蓝桥杯-合并数列

时间:2024-05-23 21:30:06浏览次数:16  
标签:10 cnt 数列 int 合并 mid 蓝桥 ++ 前缀

小明发现有很多方案可以把一个很大的正整数拆成若干正整数的和。他采取了其中两种方案,分别将它们列为两个数组 {a1, a2, ..., an} 和 {b1, b2, ..., bm}。两个数组的和相同。

定义一次合并操作可以将某数组内相邻的两个数合并为一个新数,新数的值是原来两个数的和。小明想通过若干次合并操作将两个数组变成一模一样,即 n=m 且对于任意下标 i 满足 ai=bi。请计算至少需要多少次合并操作可以完成小明的目标。

输入格式

输入共 3 行。

第一行为两个正整数 n, m。

第二行为 n 个由空格隔开的整数 a1, a2, ..., an。

第三行为 m 个由空格隔开的整数 b1, b2, ..., bm。

输出格式

输出共 1 行,一个整数。

样例输入

4 3
1 2 3 4
1 5 4

样例输出

1

样例说明

只需要将 a2 和 a3 合并,数组 a 变为 {1, 5, 4},即和 b 相同。

评测用例规模与约定

对于 20% 的数据,保证 n, m ≤ 10^3。

对于 100% 的数据,保证 n, m ≤ 10^5,0 < ai, bi ≤ 10^5。

题解:

这题有两种写法, 第一种:模拟队列, 第二种:前缀和+二分

题解一:

模拟队列法

对于两个序列 a 和 b 的开头包含三种情况:

  1. a[0]等于b[0], 此时把两个开头都删除掉
  2. b[0] < a[0], 此时把b[0]和b[1]相加, 然后删除b[0]和b[1], 把b[0]和b[1]相加的结果放到b的开头, 相当于是合并b的前两个数, cnt ++ (cnt是总操作数)
  3. a[0] < b[0], 此时把a[0]和a[1]相加, 然后删除a[0]和a[1], 把a[0]和a[1]相加的结果放到a的开头, 相当于是合并a的前两个数, cnt ++

ac代码

标签:10,cnt,数列,int,合并,mid,蓝桥,++,前缀
From: https://www.cnblogs.com/xxctx/p/18209335

相关文章

  • P8774 [蓝桥杯 2022 省 A] 爬树的甲壳虫
    设\(E_i\)为树根到高度为\(i\)的点的期望用时\(Q_i\)为\(i-1\)到\(i\)的概率,\(Q_i=1-P_i\)\(T_i\)为\(i-1\)到\(i\)的期望用时,\(T_i=E_i-E_{i-1}\)则有\(T_i=Q_i\cdot1+(1-Q_i)\cdot(E_{i-1}+T_i)\)\(\toE_i-E_{i-1}=Q_i+(1-Q_i)\cdot(......
  • 蓝桥杯-子 2023 / 双子数
    题解:第一个问题A动态规划问题f[4]状态表示:f[0]表示数字是2的个数f[1]表示以2开头0结尾的个数f[2]表示以20开头2结尾的个数f[3]表示以202开头3结尾的个数f[3]就是答案代码中有详细的注释和注意事项A代码......
  • P8675 [蓝桥杯 2018 国 B] 搭积木
    原题链接题解1.请务必读清题干意思2.如果以最顶端积木的位置为状态,是可以穷尽所有情况的,则状态为\(dp[i][l][r]\),最顶端第\(i\)层只在区间\([l,r]\)内连续放置积木有几种方法3.状态转移方程$dp[i][l][r]=\sum_1^l\sum_r^mdp[i+1][x][y]$把\(x,y\)看成二维坐标上......
  • 蓝桥杯-日志统计
    小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有N行。其中每一行的格式是:tsid表示在ts时刻编号id的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖......
  • P8624 [蓝桥杯 2015 省 AB] 垒骰子
    原题链接题解code#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstllmod=1e9+7;lla[7][7]={0},e[7]={0};voidcf1(){lltem[7]={0};for(inti=1;i<=6;i++){for(intj=1;j<=6;j++){t......
  • OceanBase企业版4.x支持指定租户合并
    下午同事询问3.x版本是否支持指定租户的合并操作,印象中没有,在官网上查询了下,也没有相关的操作手册,官方手册3.x地址如下:https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-0000000001417800正好手头上还有4.x的环境,在查询4.x官网后发现,4.x版本已经开始支持执行租......
  • 洛谷 P10512 序列合并
    哭死,比赛的时候完全想歪了,想的是考虑一次合并能造成多大的贡献,按照贡献排序然后合并。这样做只能考虑局部造成的贡献,然而最后算的时候要考虑整体,所以并不是很对。正着想没有思路就可以倒着想,考虑枚举答案。合并k次,意味着最后是n-k个数。经典从二进制高位到低位考虑,考虑这一位(假......
  • P8764 [蓝桥杯 2021 国 BC] 二进制问题
    P8764[蓝桥杯2021国BC]二进制问题一、问题简析本题采用数位dp求解。令\(f[i][j]=\)在\(i\)位二进制中,有\(j\)个\(1\),共有几个数。(相当于求组合数)由于数据范围为\(1\leN\le10^{18}\),最大二进制位数设置为70,防止溢出。预处理组合数for(inti=0;i<MAX;+......
  • 0519 基础特征数列
    1.质数数列235711131719232931+1变形34681214倒序变形29231917131175加和变形3(2+1)5(3+2)8(5+3)11(7+4)16(11+5)19(13+6)24(17+7)2.合数数列468910121415(偶数里夹了1个奇数)3.周期数列1341341......
  • 蓝桥杯备忘录——超声波
    有关蓝桥杯的超声波代码实测测距能达到两米多以下是代码voidchao_init(){ uchari; for(i=0;i<8;i++) { na1=1;//连续发送8个频率为40Khz的超声波信号 Delay12us(); na1=0; Delay12us(); }}//////////////////////////////////////////////////接下......