NOIP2014飞扬的小鸟[DP][WRONG]】的更多相关文章

[NOIP2014]飞扬的小鸟 ——!x^n+y^n=z^n 题目描述: Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败. 为了简化问题,我们对游戏规则进行了简化和改编: <i>游戏界面是一个长为n ,高为 m 的二维平面,其中有k 个管道(忽略管道的宽度). <ii>小鸟始终在游戏界面内移动.小鸟从游戏界面最左边任意整数高度位置出…
坑人啊朴素的dp 75分 用了完全背包才是80分,结果普遍偏小 为什么啊啊啊啊啊 等以后再写一遍吧 #include<iostream> #include<cstdio> #include<cstring> using namespace std; ,M=,INF=1e9; int n,m,k, x,y,p,ll,hh; int up[N],down[N],l[N],h[N], has[N]; int f[N][M]; int ans=INF; void dp(){ ;…
设f[i][j]为到达(i,j)这个位置的最小操作数 就有$f[i][j]=min\{f[i-1][j+Y[i-1]],f[i-1][j-X[i-1]*k]+k\}$ 然后考虑优化一下转移: 对于一系列模x[i-1]相同的高度,它们都可以转移到模x[i-1]相同的高度.而且在它们上边的点,所以只要从下往上做,不断地取一个最小值就可以了(会意 会意...) 要注意的是不管怎么操作,只要操作完高度>M都会变成=M,而且还可以从M点一下还维持在M #include<bits/stdc++.h>…
LOJ2500 NOIP2014 飞扬的小鸟 LINK 题目大意就是说有n个柱子,在每一秒你可以选择不点下降高度y和点p次上升x∗p,若果当前位置加上x∗p大于上界m,就会停在m. 如果可以成功穿越所有柱子输出最小点击次数,否则输出最多可以穿越的柱子数量 感觉是非常显然的DP,如果不点就是一个01背包,在点的时候是一个完全背包 所以可以设dp[i][j]是到达第i列高度为j的最小步数 然后可以发现转移 dp[i][j]=min(dp[i−1][j−x[i]∗p]+p) 向下掉的时候是这样的 dp…
飞扬的小鸟 DP 细节有点恶心的DP,设\(f[i][j]\)表示横坐标为\(i\)(从\(0\)开始)高度为\(j\)时,屏幕点击的最小次数为\(f[i][j]\),转移便很好写了,这里要注意枚举当前状态时要枚举完所有\(j\),因为每次转移只向上跳了一次,所以必须枚举完. for(int j=1;j<=m+xd[i];++j) if(j-xd[i]>=0) f[i][j]=min(f[i][j-xd[i]]+1, f[i-1][j-xd[i]]+1); // 向上跳 for(int j=m…
题目链接  飞扬的小鸟 考场的70分暴力(实际只有50分因为数组开小了……) 考场代码(数组大小已修改) #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <functional> using namespace std; #define rep(i, a, b) for (int i(a); i <= (b); ++…
3. 飞扬的小鸟 (bird.cpp/c/pas) [问题描述] Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败. 为了简化问题,我们对游戏规则进行了简化和改编: 游戏界面是一个长为n,高 为m的二维平面,其中有k个管道(忽略管道的宽度). 小鸟始终在游戏界面内移动.小鸟从游戏界面最左边任意整数高度位置出发,到达游戏界面最右边时,游戏完成. 小鸟…
描述 Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败. 为了简化问题,我们对游戏规则进行了简化和改编: 游戏界面是一个长为 n,高为 m 的二维平面,其中有k 个管道(忽略管道的宽度). 小鸟始终在游戏界面内移动.小鸟从游戏界面最左边 任意整数高度位置出发,到达游戏界面最右边时,游戏完成. 小鸟每个单位时间沿横坐标方向右移的距离为 1,竖直移动的…
长为n,高为m的二维平面,其中有k个管道(忽略管道的宽度)小鸟始终在游戏界面内移动.从最左边任意高度位置出发,到达游戏界面最右边,游戏完成每个单位时间沿横坐标方向右移距离为1,竖直移动的距离由玩家控制.如果点击屏幕,小鸟就会上升一定高度X每个单位时间内可以点击多次,效果叠加.如果不点击屏幕,小鸟就会下降高度Y.小鸟位于横坐标方向不同位置时,上升高度X和下降高度Y可能互不相同小鸟高度等于0或是小鸟碰到管道时,游戏失败,小鸟高度为m时,无法再上升判断游戏是否可以完成,如果可以,输出最少点击屏幕数,否…
题目描述 Flappy Bird是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败. 为了简化问题,我们对游戏规则进行了简化和改编: 游戏界面是一个长为 nn,高为 mm 的二维平面,其中有 kk 个管道(忽略管道的宽度). 小鸟始终在游戏界面内移动.小鸟从游戏界面最左边任意整数高度位置出发,到达游戏界面最右边时,游戏完成. 小鸟每个单位时间沿横坐标方向右移的距离为 11,…