【卡特兰数】【递推】【高精+压位】JZOJ·WZK打雪仗
题目大意:
有2n个人站在一个圈里,有n人要去其他n人那(两人连一线),线不能与其他线碰在一起,让你求方案数。
思路:
卡特兰数,因为位数大,高精压位走起
CodeCodeCode:
#include<cstdio>
#include<iostream>
#define for(i,x,y) for(int i=x;i<=y;i++)
using namespace std;
int MOD=1000000000,n,f[125][125][10];
void gj(int *a,int *b,int *c)//高精
{int ws=0;for(i,1,10){ws=b[i]+c[i]+ws;a[i]=ws%MOD;ws/=MOD;}return;
}
void yw(int *y)//压位
{int ws=10;while(!y[ws] && ws>1)--ws;printf("%d",y[ws]);while(--ws){if(y[ws]<1e8) printf("0");if(y[ws]<1e7) printf("0");if(y[ws]<1e6) printf("0");if(y[ws]<1e5) printf("0");if(y[ws]<1e4) printf("0");if(y[ws]<1e3) printf("0");if(y[ws]<1e2) printf("0");if(y[ws]<1e1) printf("0");printf("%d",y[ws]);}return;
}
int main()
{freopen("war.in","r",stdin);freopen("war.out","w",stdout);scanf("%d",&n);for(i,1,n)f[1][i][1]=i;//初始化for(i,2,n)for(j,i,n)gj(f[i][j],f[i-1][j],f[i][j-1]);//卡特兰数yw(f[n][n]);return 0;
}
【卡特兰数】【递推】【高精+压位】JZOJ·WZK打雪仗相关推荐
- P1754 球迷购票问题 (卡特兰数,递推)
题目背景 盛况空前的足球赛即将举行.球赛门票售票处排起了球迷购票长龙. 按售票处规定,每位购票者限购一张门票,且每张票售价为50元.在排成长龙的球迷中有N个人手持面值50元的钱币,另有N个人手持面值1 ...
- 【卡特兰数】【高精】WZK打雪仗(war)
[题目背景] 一中操场的格局,同别处不大一样-其实也差不多. 又到冬天了,WZK组织了好多人去打雪仗.WZK一帮共2N人挖了一个以(0,0)为圆心的圆,所有人都在圆周上作战(不在圆的内部). 但是毕竟 ...
- 【JZOJ】【卡特兰数】【高精】WZK打雪仗
DescriptionDescriptionDescription 按顺序排成的一个有2n个点的圆,问有多少种方法,连接n条边(两个点之间相连),每个点只能连一条边,问有多少种方案使得n条边互不相交 ...
- HDU - 5686-Problem B (递推+高精)
度熊面前有一个全是由1构成的字符串,被称为全1序列.你可以合并任意相邻的两个1,从而形成一个新的序列.对于给定的一个全1序列,请计算根据以上方法,可以构成多少种不同的序列. Input 这里包括多组测 ...
- LOJ 3090 「BJOI2019」勘破神机——斯特林数+递推式求通项+扩域
题目:https://loj.ac/problem/3090 题解:https://www.luogu.org/blog/rqy/solution-p5320 1.用斯特林数把下降幂化为普通的幂次求和 ...
- CF 717A Festival Organization——斯特林数+递推求通项+扩域
题目:http://codeforces.com/contest/717/problem/A 是 BJOI2019 勘破神机 的弱化版. 令 \( g[i] \) 表示长为 i .以 1 结尾的方案数 ...
- Catalan (卡特兰数)
Catalan (卡特兰数) 前置知识: 1.排列数公式: A n m = n ( n − 1 ) ( n − 2 ) . . . ( n − m + 1 ) A^m_n=n(n-1)(n-2)... ...
- I00020 计算卡特兰数函数
卡特兰数是组合数学中的一个重要概念. 卡特兰数可以解决以下四种典型的问题: 1.括号化问题 矩阵链乘: P=a1×a2×a3×--×an,依据乘法结合律,不改变其顺序,只用括号表示成对的乘积,试问有几 ...
- Catalan Numbers 卡特兰数
卡特兰数源于组合数学,递推式为 H[1] = 1:H[n] = H[n-1]*(4*n-2)/(n+1){n>=2}: 卡塔兰数的渐近增长为 下面给出几个求卡特兰数的公式,用h(n)表示卡特兰数 ...
最新文章
- linux shell脚本攻略_(python)Linux下shell脚本监控Tomcat的状态并实现自动启动步骤...
- TCL中关于Pins的一些使用方法?
- 四阶显式Adams法求方程组C语言,第五讲第4章线性多步法(续
- 【Linux】一步一步学Linux——md5sum命令(61)
- lighttpd mysql_lighttpd+mysql+php
- 2013 ACM区域赛长沙 K Pocket Cube hdu 4801
- python virtualenv_python开发之virtualenv与virtualenvwrapper讲解
- 基于注意力机制的seq2seq网络
- 常用的echo和cat,这次让我折在了特殊字符丢失问题上
- 【Java】IntegerCache的妙用和陷阱
- html导航栏模板代码生成器,关于代码生成器的html页面模板支持更多类型的问题...
- 如何知道域名是否解析成功
- vscode-设置tab转空格数4为2
- matplotlib画的图保存为emf格式
- java find 方法,findOne方法是findOne(Example
- 2014美团校园招聘笔试(10.8北京)
- 论文阅读:Semantic Parsing on Freebase from Question-Answer Pairs
- 用支付宝和微信都可以扫的聚合支付码其原理是什么?云收呗的原理也很简单,API搭建比较方便,云收呗是最大的黑天鹅
- 遇见未来 | PostgreSQL:一匹即将发力的黑马
- 什么是数位板? 数位板,又名绘图板、绘画板、手绘板等等,是计算机输入设备的一种,通常是由一块板子和一支压感笔组成,它和手写板等作为非常规的输入产品相类似,都针对一定的使用群体。 与手写板所不同的是