变音量
来源:互联网 发布:陶哲轩现状 知乎 编辑:程序博客网 时间:2024/04/26 20:08
[问题描述]
你将要在元旦演奏一场吉他专场。但你不希望声音平淡,所以你希望每个曲之间都有变化。现在你已经确定了每个曲可以与上一个曲之间的音量的变化量,即每首曲开始,你可以对音量选择增加或减少一个指定的变化值。当然音量不可能为负数,也不能太高,因此必需保证每首曲音量在0和maxLevel之间(包含)。
你的任务是,根据已有的开始音量beginLevel 和每首曲之间的变化量,求出最后一首曲的最大可能音量。如果没有方案,输出 -1。
[输入文件:song.in]
文件第一行有三个整数,n, beginLevel, maxLevel,分别表示曲目数,开始量,最大限制音量。
下面有n-1行整数,第i行整数表示第i首曲与第i+1首曲之间的变化量。
[输入文件:song.in]
文件只一行一个数,答案。
[题解]
判定性DP.
[代码]
var f:array[0..100,-2000..2000] of boolean; n,start,max,i,j,jj:longint; a:array[0..100] of longint;begin assign(input,'song.in'); assign(output,'song.out'); reset(input); rewrite(output); readln(n,start,max); for i:=1 to n-1 do readln(a[i+1]); fillchar(f,sizeof(f),false); f[1,start]:=true; for i:=2 to n do for j:=0 to max do begin if j-a[i]>=0 then f[i,j]:=f[i-1,j-a[i]]; if j+a[i]<=max then f[i,j]:=f[i,j] or f[i-1,j+a[i]]; end; jj:=-1; for j:=max downto 0 do if f[n,j] then begin jj:=j; break; end; writeln(jj); close(input); close(output);end.
0 0
- 变音量
- 图变音词
- 支持播放可变音
- 连读、变音、失音、浊化、弱读、节奏
- 美语音标 [s]相关的变音
- Fmod学习3将音频文件变音播放
- 播放音乐,SeekBar改变音大小
- 美语音标 [z]出现在字尾的变音
- 量比
- 无穷量
- 量比
- 量比
- 代码量
- 偏移量
- 超标量
- 临时量
- 代码量
- 油量
- 洛谷 P1050 循环
- 程序员的日常逗逼
- 简单实用js——可输入可选择可模糊查询的select下拉
- InnoDB: Operating system error number 87 in a file operation.错误解决方案
- 2016.11.2 第一题 矩形分割 codevs 2208/codevs 4490
- 变音量
- java片段
- Android开发:shape和selector和layer-list的(详细说明)
- RxJava学习笔记
- vs2013环境下mfc里添加浮动窗口并贴上对话框
- WikiOI 2370 小机房的树 (最裸LCA)
- ubuntu安装pypcap
- 蓝背抠像 绿背抠像 算法,实时视频抠像算法 视频直播抠像
- 循序渐进地代码重构