Dotcpp  >  编程题库  >  蓝桥杯2023年第十四届决赛真题-合并数列
题目 3191:

蓝桥杯2023年第十四届决赛真题-合并数列

时间限制: 2s 内存限制: 512MB 提交: 3 解决: 3

题目描述

小明发现有很多方案可以把一个很大的正整数拆成若干正整数的和。他采 取了其中两种方案,分别将他们列为两个数组 {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 ≤ 103。 

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

标签