caioj1065:动态规划入门(一维一边推3:合唱队形)
2017-08-26 10:26
239 查看
【闲话】
清楚地记得以前写过...原来很久都没有听懂 听老师讲了好多遍才明白 不过还是忘记了(...)最长上升子序列可以说写的有点熟了但是下降老写错...多练吧唉 那可能还是没理解很好w 之前都没怎么注意缩进的问题 想怎么搞怎么搞...昨天翻书看if switch看到提示 想着还是注意一下括号的位置呀blabla的好了
【题目】
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。
合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,
他们的身高分别为T1,T2,…,TK,则他们的身高满足 T1 < T2 ...< Ti > Ti+1 > … >TK(1<=i<=K)。
你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。
【输入格式】
第一行是一个整数N(2<=N<=100),表示同学的总数。
下来n个整数,用空格分隔,第i个整数Ti(130<=Ti<=230)是第i位同学的身高(厘米)。
【输出格式】
包括一行,这一行只包含一个整数,就是最少需要几位同学出列。
【样例输入】
8
186 186 150 200 160 130 197 220
【样例输出】
4
【代码】
清楚地记得以前写过...原来很久都没有听懂 听老师讲了好多遍才明白 不过还是忘记了(...)最长上升子序列可以说写的有点熟了但是下降老写错...多练吧唉 那可能还是没理解很好w 之前都没怎么注意缩进的问题 想怎么搞怎么搞...昨天翻书看if switch看到提示 想着还是注意一下括号的位置呀blabla的好了
【题目】
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。
合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,
他们的身高分别为T1,T2,…,TK,则他们的身高满足 T1 < T2 ...< Ti > Ti+1 > … >TK(1<=i<=K)。
你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。
【输入格式】
第一行是一个整数N(2<=N<=100),表示同学的总数。
下来n个整数,用空格分隔,第i个整数Ti(130<=Ti<=230)是第i位同学的身高(厘米)。
【输出格式】
包括一行,这一行只包含一个整数,就是最少需要几位同学出列。
【样例输入】
8
186 186 150 200 160 130 197 220
【样例输出】
4
【代码】
#include<cstdio> using namespace std; int a[1005],b[1005],c[1005]; int main(){ int n; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); for(int i=1;i<=n;i++) b[i]=1; for(int i=1;i<=n;i++) { for(int j=i-1;j>=b[i];j--) { if(a[j]<a[i])// { if(b[j]+1>b[i]) b[i]=b[j]+1; } } } for(int i=1;i<=n;i++) c[i]=1; for(int i=n-1;i>=1;i--)//最后一个最长的是自己 { for(int j=i+1;j<=n;j++) { if(a[i]>a[j])//一开始把>写成<了qwq { if(c[j]+1>c[i]) c[i]=c[j]+1; } } } int ans=0; for(int i=1;i<=n;i++) { if(ans<b[i]+c[i]-1) ans=b[i]+c[i]-1; //自己计算了两次 } printf("%d",n-ans); return 0; }
相关文章推荐
- 【NOIP·TG2004】caioj1065·动态规划入门(一维一边推3:合唱队形)
- caioj1066:动态规划入门(一维一边推4:护卫队)
- caioj1063:动态规划入门(一维一边推1:美元和马克)
- caioj1064:动态规划入门(一维一边推2:最长上升子序列)
- 动态规划之合唱队形问题
- 普及练习场 线性动态规划 合唱队形
- 动态规划--合唱队形
- 动态规划__合唱队形问题
- 动态规划之合唱队形问题
- 动态规划3:合唱队形
- 动态规划之合唱队形问题(最长递增子序列变形)
- 动态规划试题:合唱队形
- 动态规划之合唱队形问题(最长递增子序列变形)
- 动态规划—29合唱队形
- JZOJsenior1168.【NOIP动态规划专题】合唱队形
- 动态规划的入门理解
- 动态规划入门教程
- 教你彻底学会动态规划——入门篇
- 动态规划入门 UVA12563 Jin Ge Jin Qu hao
- 动态规划入门