POJ 1597 Function Run Fun
记忆化搜索。
#include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<vector> #include<map> #include<queue> #include<string> #include<iostream> using namespace std;struct X{int x,y,z;X(int xx,int yy,int zz){x=xx;y=yy;z=zz;}bool operator < (const X &a) const {if(x!=a.x) return x>a.x;if(y!=a.y) return y>a.y;return z>a.z;} }; int a,b,c; map<X,bool>f; map<X,int>w;int work(int x,int y,int z) {if(f[X(x,y,z)]) return w[X(x,y,z)];f[X(x,y,z)]=true;if(x <= 0 || y <= 0 || z <= 0) w[X(x,y,z)]=1;else if(x > 20 || y > 20 || z > 20) w[X(x,y,z)] = work(20,20,20);else if(a < b && b < c) w[X(x,y,z)] =work(x, y, z-1) + work(x, y-1, z-1) - work(x, y-1, z);else w[X(x,y,z)] = work(x-1, y, z) + work(x-1, y-1, z) + work(x-1, y, z-1) - work(x-1, y-1, z-1);return w[X(x,y,z)]; }int main() {while(~scanf("%d%d%d",&a,&b,&c)){if(a==-1&&b==-1&&c==-1) break;printf("w(%d, %d, %d) = %d\n",a,b,c,work(a,b,c));}return 0; }
转载于:https://www.cnblogs.com/zufezzt/p/6814442.html
POJ 1597 Function Run Fun相关推荐
- 记忆化搜索--poj 1597 Function Run Fun
http://poj.org/problem?id=1579 如果按平常写会超时 long long dfs(int x, int y, int z) {if(x <= 0 || y <= ...
- POJ - 1579 Function Run Fun
Function Run Fun POJ - 1579 AYIT-2021 609暑假集训第一周下 记忆化搜索和背包 We all love recursion! Don't we? Consider ...
- POJ1579 HDU1331 HDU1579 ZOJ1168 Function Run Fun【记忆化递归】
Function Run Fun Description We all love recursion! Don't we? Consider a three-parameter recursive f ...
- (精)【ACM刷题之路】POJ题目详细多角度分类及推荐题目
POJ上的一些水题(可用来练手和增加自信) (poj3299,poj2159,poj2739,poj1083,poj2262,poj1503,poj3006,poj2255,poj3094) 初期: ...
- POJ前面的题目算法思路【转】
1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 85% 2005-5-7 1002 487-3279 n/a 90% 2005-5- ...
- poj题目详细分类及算法推荐题目
DP: 1011 NTA 简单题 1013 Great Equipment 简单题 1024 Calendar Game 简单题 ...
- ACM POJ 题目分类(完整整理版本)
DP: 1011 NTA 简单题 1013 Great Equipment 简单题 1024 Calendar Game 简单题 ...
- POJ题目分类(按初级\中级\高级等分类,有助于大家根据个人情况学习)
本文来自:http://www.cppblog.com/snowshine09/archive/2011/08/02/152272.spx 多版本的POJ分类 流传最广的一种分类: 初期: 一.基本算 ...
- hdu与poj题目分类
POJ 初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(po ...
最新文章
- 漫话:如何给女朋友解释什么是熔断?
- 进制转换数据结构c语言不用栈,急求!!!用数据结构(C语言)利用栈实现十进制向二(八)进制转换,要有注释,谢谢!...
- java panel 左对齐,将Shape的中心与JPanel的中心对齐 - java
- 链接器(linker)的作用——CSAPP第7章读书笔记
- Python os.path() 模块 详解 附算例
- 异步加载在Vue生命周期哪个阶段更合理
- 转载:关于对REST的基本认识和理解
- UILabel 宽高自适应
- 数仓安全:用Alter default privilege解决共享schema权限
- WRF模式中eta层的设置以及分别对应的高度(转)
- 23. Linux 主机上的用户信息传递
- 基于单片机的室内空气质量检测系统
- 摄像头各参数的意义_详解:摄像头参数介绍说明
- 【最优化导论】一维搜索方法
- 阿里云安全防护是如何做到的?有怎样的安全生态圈
- Kylin RT OLAP reassign流程即重新分配replica_set 流程
- Android--智能图像识别(基于百度智能云)
- jetson 板卡功率测试
- ctfshow_2021月饼杯记录
- Groovy(Java笨狗)系列--fields and local variables
热门文章
- PHP学习笔记-字符串操作1
- Swift直接解析YApi接口为模型
- UIView自定义控件-Swfit
- Flutter开发之BottomSheetDialog选择组件-5(44)
- Flutter开发之SnackBar提示组件-4(43)
- (0011) iOS 开发之模拟HTTP请求与响应,返回自己想要的报文。
- android one gm 5,Android One计划诞生,GM 5 Plus发布
- list 去重_测试面试题集Python列表去重
- python控制流_Python 的控制流代码混淆
- 使用Donut Caching和Donut Hole Caching在ASP.NET MVC应用中缓存页面