codeforces Gym
来源:互联网 发布:linux telnet端口 编辑:程序博客网 时间:2024/06/09 22:10
其实这个和那个扔水球的题目是不同的。
这个 题目记忆化就可以了,子结构的性质挺明显的,而且时间复杂度其实在记忆化之后小。
#include<iostream>#include<string>#include<cstring>#include<cmath>#include<cstdio>#include<stack>#include<queue>#include<vector>#include<set>#include<algorithm>using namespace std;const int MAXM=1000010;const int bit=4;const long long INF=0x3f3f3f3f3f3f3f3f;const int maxm=60*30;const long long MOD=998244353;long long n,r,p;long long dp[MAXM];long long ce(long long x,long long y){ long long z=x/y; if (z*y==x) return z; else return z+1;}long long dfs(long long n){ if (dp[n]) return dp[n]; if (n<=1) return 0; long long res=INF; for (long long i=2;i<=n;i++)//讨论分段情况 res=min(res,dfs(ce(n,i))+(i-1)*p+r);//注意这里要向上取整 return dp[n]=res;}int main(){ scanf("%lld%lld%lld",&n,&r,&p); memset(dp,0,sizeof(dp)); long long ans=dfs(n); printf("%lld\n",ans); return 0;}
阅读全文
0 0
- 【Codeforces Gym
- 【codeforces Gym
- codeforces Gym
- codeforces Gym
- codeforces Gym
- codeforces Gym
- Codeforces Gym
- Codeforces Gym
- Codeforces Gym
- codeforces Gym
- Codeforces Gym
- Codeforces Gym
- Codeforces Gym
- [codeforces] Gym
- [codeforces] Gym
- [codeforces] Gym
- [codeforces] Gym
- [codeforces] Gym
- man命令的使用
- java设置session销毁 失效的方法
- Java Web开发环境搭建
- ES6--Symbol数据类型
- ArrayList源码研究
- codeforces Gym
- 传统BIOS安装Ubuntu双系统
- (二十四)自定义动画框架
- halcon导出类---HDevWindowStack详解
- Java Web 后续(三)
- java中equals方法的用法以及==的用法(转)
- tarjan算法求强连通分量详解(避免误区)
- 数据库连接池
- LintCode刷题——背包问题