indeed最后一题怎么做的?

用动归过了百分之40 求完整思路 谢谢大神
全部评论
就是dp,但是仍然是o(n^2)的,咋办呢?前缀和,这样就O(n)了,轻松AC。 贴个代码给你吧,简单的不要不要的。 #include <iostream> using namespace std; #define pb push_back #define mp make_pair #define ll long long #define ull unsigned ll #define db double #define INF 0x3f3f3f3f #define MOD 1000000007 #define PII pair<int, int> db dp[100010]; db pfs[100010]; int main() { int n; cin >> n; dp[0] = 0.0f; dp[1] = 1.0f; dp[2] = 1.0f; pfs[0] = 0.0f; pfs[1] = 1.0f; pfs[2] = 2.0f; for (int i = 3; i <= n; i++) { dp[i] = 1.0 + 2.0 * pfs[i - 2] / (db)i; pfs[i] = pfs[i - 1] + dp[i]; } printf("%.10f\n", dp[n]); }
点赞 回复 分享
发布于 2016-10-16 22:37
indeed是在线笔试吗?
点赞 回复 分享
发布于 2016-10-17 00:36
求期望的那题么
点赞 回复 分享
发布于 2016-10-16 16:52
我记得说n小于1000就能得分吧,求过40的代码
点赞 回复 分享
发布于 2016-10-16 12:49

相关推荐

喜欢喜欢喜欢:这是我见过最长最臭的简历
点赞 评论 收藏
分享
存一千万就可以进大厂实习
石圪节公社发型师:有存一千万的实力还实习个嘚,直接躺平
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务