HDU4165 Pills
2021/5/18 10:55:41
本文主要是介绍HDU4165 Pills,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
链接
Pills - http://acm.hdu.edu.cn/showproblem.php?pid=4165
分析
- 共N片,每一片都会被取到,因此取到完整的一片的次数是N
- 每一次取到完整的一片,都会有半片放回,故共有N个半片
- 每一个半片都会被取到
- 取到完整的一片次数一定不少于取到半片的次数
- 结论:符合 ± 1 \pm1 ±1 模型,因此判定是卡特兰数
代码
从哪里来?【0MS】
#include <bits/stdc++.h> using namespace std; #define MXN 35 long long c[MXN] = {1,1}; void init(){ for(int i = 2; i < MXN; i++){ for(int j = 0; j < i; j++){ c[i] += c[j]*c[i-j-1]; } } } int main(){ int n; init(); while(scanf("%d", &n), n){ cout << c[n] << endl; } return 0; }
到哪里去?【0MS】
#include <bits/stdc++.h> using namespace std; #define MXN 35 long long c[MXN<<1] = {1}; void init(){ for(int i = 0; i < MXN; i++){ for(int j = 0; j <= i; j++){ c[j+i+1] += (i==j?1:2)*c[j]*c[i]; } } } int main(){ int n; init(); while(scanf("%d", &n), n){ cout << c[n] << endl; } return 0; }
这篇关于HDU4165 Pills的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Java语音识别项目资料:新手入门教程
- 2024-11-26JAVA语音识别项目资料:新手入门教程
- 2024-11-26Java语音识别项目资料:入门与实践指南
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料:新手入门教程
- 2024-11-25Java创意资料:新手入门的创意学习指南
- 2024-11-25JAVA对接阿里云智能语音服务资料详解:新手入门指南
- 2024-11-25Java对接阿里云智能语音服务资料详解
- 2024-11-25Java对接阿里云智能语音服务资料详解