一个算法的问题,目测是DFS?
描述Alice很喜欢唱歌。他准备参加一个歌唱比赛。
Alice会唱N首歌曲,每一首歌都有演唱时间和音调。假设第i首歌的演唱时间为dura[i],音调为tone[i]。
Alice发现很难连续演唱不同音调的歌曲。当他唱完第i首歌之后准备唱第j首歌,他需要| tone[i]-tone[j] | 的时间去调整。
已知Alice只有时间T去表演。假设一开始Alice就能马上进入状态演唱任意一首歌,并且他每一次选歌都是任意的。现在Alice想知道在给定的时限内他最多能够演唱多少首歌曲。
输入格式
多样例,EOF结束。
对于每个样例,第一行为N。(1<=N<=15)
第二行有N个整数dura[i],表示每首歌的演唱时间。(dura[i]<=1000000)
第三行有N个整数tone[i],表示每首歌的音调。(tone[i]<=1000000)
第四行一个整数T,表示Alice的表演时间。
输出格式
每个样例输出一个整数,表示Alice在给定的时限内他最多能够演唱多少首歌曲。
输入样例
5
9 5 2 5 5
8 7 1 3 3
14
输出样例
3
------------------------------------------------------------------
不需要完整的程序,只要有人能给我提供一下大体思路就好,感激不尽