CodeM资格赛第一题
2017-06-12 17:35
330 查看
[编程|1000分] 音乐研究
时间限制:1秒
空间限制:32768K
题目描述
美团外卖的品牌代言人袋鼠先生最近正在进行音乐研究。他有两段音频,每段音频是一个表示音高的序列。现在袋鼠先生想要在第二段音频中找出与第一段音频最相近的部分。
具体地说,就是在第二段音频中找到一个长度和第一段音频相等且是连续的子序列,使得它们的 difference 最小。两段等长音频的 difference 定义为:
difference = SUM(a[i] - b[i])2 (1 ≤ i ≤ n),其中SUM()表示求和
其中 n 表示序列长度,a[i], b[i]分别表示两段音频的音高。现在袋鼠先生想要知道,difference的最小值是多少?数据保证第一段音频的长度小于等于第二段音频的长度。
输入描述:
第一行一个整数n(1 ≤ n ≤ 1000),表示第一段音频的长度。
第二行n个整数表示第一段音频的音高(0 ≤ 音高 ≤ 1000)。
第三行一个整数m(1 ≤ n ≤ m ≤ 1000),表示第二段音频的长度。
第四行m个整数表示第二段音频的音高(0 ≤ 音高 ≤ 1000)。
输出描述:
输出difference的最小值
输入例子:
2
1 2
4
3 1 2 4
输出例子:
0
用py打表没过,C++暴力过了,第一次dif = 0x3f3f3f;过一半,dif = 0x3f3f3f3f;过了,很坑。
时间限制:1秒
空间限制:32768K
题目描述
美团外卖的品牌代言人袋鼠先生最近正在进行音乐研究。他有两段音频,每段音频是一个表示音高的序列。现在袋鼠先生想要在第二段音频中找出与第一段音频最相近的部分。
具体地说,就是在第二段音频中找到一个长度和第一段音频相等且是连续的子序列,使得它们的 difference 最小。两段等长音频的 difference 定义为:
difference = SUM(a[i] - b[i])2 (1 ≤ i ≤ n),其中SUM()表示求和
其中 n 表示序列长度,a[i], b[i]分别表示两段音频的音高。现在袋鼠先生想要知道,difference的最小值是多少?数据保证第一段音频的长度小于等于第二段音频的长度。
输入描述:
第一行一个整数n(1 ≤ n ≤ 1000),表示第一段音频的长度。
第二行n个整数表示第一段音频的音高(0 ≤ 音高 ≤ 1000)。
第三行一个整数m(1 ≤ n ≤ m ≤ 1000),表示第二段音频的长度。
第四行m个整数表示第二段音频的音高(0 ≤ 音高 ≤ 1000)。
输出描述:
输出difference的最小值
输入例子:
2
1 2
4
3 1 2 4
输出例子:
0
用py打表没过,C++暴力过了,第一次dif = 0x3f3f3f;过一半,dif = 0x3f3f3f3f;过了,很坑。
#include <iostream> using namespace std; int main() { int n, m; cin >> n; int f[1001]; int s[1001]; for (int i = 0; i < n; ++i) cin >> f[i]; cin >> m; for (int i = 0; i < m; ++i) cin >> s[i]; int dif = 0x3f3f3f3f; for (int i = 0; i < m-n+1; ++i) { int t = 0; for (int j = 0; j < n; ++j) t += (f[j] - s[i + j])*(f[j] - s[i + j]); dif = dif < t ? dif : t; } cout << dif << endl; return 0; }
相关文章推荐
- 编程之美2013 资格赛 第一题 解题报告
- 2014年百度之星资格赛第一题Energy Conversion
- 美团 CodeM 资格赛 Round A 合并回文子串
- 编程之美资格赛第一题:传话游戏
- 2014年百度之星程序设计大赛 资格赛第一题 (longlong)
- 2014年百度之星程序设计大赛 - 资格赛 第一题 Energy Conversion
- CodeM资格赛A 音乐研究 题解
- 美团 CodeM 资格赛 Round A 倒水 讨论+二分
- 2014年百度之星程序设计大赛 - 资格赛 第一题 Energy Conversion
- `2015 编程之美 资格赛 第一题 hihocoder 区间闰年 2月29 数量 模拟题
- CodeM资格赛1
- CodeM资格赛B 锦标赛 题解
- loj 6084.「美团 CodeM 资格赛」跳格子
- CodeM资格赛 Round A 最长树链
- 2015年百度之星资格赛第一题分析
- 编程之美大赛资格赛第一题
- 2014年百度之星资格赛第一题Energy Conversion
- CodeM资格赛C 优惠券 题解
- loj 6085.「美团 CodeM 资格赛」优惠券
- CodeM资格赛 Round A 最长树链