【DP】【高精】WZK打雪仗(jzoj 1997)

WZK打雪仗

jzoj 1997

题目大意:

在一个环上有n*2个点,问有多少种连法可以用n条线连接成n对点

输入样例

5

输出样例

42

解释:

一种可行的方案如下:
在这里插入图片描述

数据范围

对于30%数据: n<=30。
对于100%数据: n<=100。

解题思路:

这题其实很像,把一个图分割成多块的分割法,我们每一次分割后,看放在两边的点分别有多少对,这就很像Catalan数,我们设f[i]f[i]f[i]iii个点的分割法的种数,然后可以推出一下方程:
{f[0]=1f[1]=1f[i]=∑j=0i−1f[j]∗f[i−1−j]\left\{\begin{matrix}f[0]=1\\ f[1]=1\\ f[i]=\sum_{j=0}^{i-1}f[j]*f[i-1-j]\end{matrix}\right.f[0]=1f[1]=1f[i]=j=0i1f[j]f[i1j]
其次是因为答案很大所以要高精

代码:

#include<cstdio>
using namespace std;
typedef long long ll;
ll n,k,s[15],f[150][15];
void gjc(ll x,ll y)//高精乘
{for (int i=1;i<=10;++i)for (int j=1;j<=10;++j){s[i+j-1]+=f[x][i]*f[y][j];s[i+j]+=s[i+j-1]/1000000000;s[i+j-1]%=1000000000;}
}
void gjj(ll x)//高精加
{for (int i=1;i<=10;++i){f[x][i]+=s[i];f[x][i+1]+=f[x][i]/1000000000;f[x][i]%=1000000000;s[i]=0;}
}
int main()
{scanf("%lld",&n);f[0][1]=1;f[1][1]=1;for (int i=2;i<=n;++i)for (int j=0;j<i;++j)//DP{gjc(j,i-j-1);gjj(i);}int k=10;while(!f[n][k]&&k>0) --k;//压位高精输出printf("%lld",f[n][k]);for (int i=k-1;i>0;--i)printf("%0*lld",9,f[n][i]);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/320617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

月旦评 之 DevOps招贤令2018

公元164-182年间&#xff0c;汝南平舆的许氏兄弟于每月初一品评人物&#xff0c;褒贬时政&#xff0c;被称为“月旦评”。所谓“子治世之能臣&#xff0c;乱世之奸雄也”这句许邵评价曹操的话也是来自于“月旦评”&#xff1b;时间一下子来到了2018年&#xff0c;LEANSOFT DevO…

函数式编程之-模式匹配(Pattern matching)

编者&#xff1a;C# 7.0也加入了模式匹配&#xff0c;来源于F#。模式匹配在F#是非常普遍的&#xff0c;用来对某个值进行分支匹配或流程控制。模式匹配的基本用法模式匹配通过match...with表达式来完成&#xff0c;一个完整的模式表达式长下面的样子&#xff1a;match [somethi…

Asp.Net Core SignalR 与微信小程序交互笔记

什么是Asp.Net Core SignalRAsp.Net Core SignalR 是微软开发的一套基于Asp.Net Core的与Web进行实时交互的类库&#xff0c;它使我们的应用能够实时的把数据推送给Web客户端。功能自动管理连接允许同时广播到所有客户端也可以广播到指定的组或者特定的客户端在Github上开源&am…

手机(jzoj 1983)

手机 jzoj 1983 题目大意&#xff1a; 在手机输入键盘上有很多键&#xff08;如下图&#xff09;&#xff0c;每一个位置按一次就是第一个字母&#xff0c;第二次就是第二个字母&#xff08;空格按0一次&#xff09;&#xff0c;现在问打出一条信息最少按几下&#xff1f; …

Go vs .NET Core 2.1

.NET Core 2.1 正式发布之际&#xff0c;微软团队在博客的中提到了 .NET Core 2.1 中的性能提升。这让我想起了去年 Go 语言 Iris MVC 框架作者做的 Go 与 .NET Core 2.0 之间的性能对比(具体可看https://hackernoon.com/go-vs-net-core-in-terms-of-http-performance-7535a61b…

.NET Core TDD 前传: 编写易于测试的代码 -- 依赖项

第1篇: 讲述了如何创造"缝". "缝"(seam)是需要知道的概念.第2篇, 避免在构建对象时写出不易测试的代码.本文是第3篇, 讲述依赖项和迪米特法则.迪米特法则 (Law of Demeter)还是使用建造汽车的例子. 生产汽车的时候需要轮胎, 组装时需要什么型号的轮胎, 就…

.Net Core中的日志组件(Logging)

1、介绍Logging组件是微软实现的日志记录组件包括控制台(Console)、调试(Debug)、事件日志(EventLog)和TraceSource&#xff0c;但是没有实现最常用用的文件记录日志功能(可以用其他第三方的如NLog、Log4Net。之前写过NLog使用的文章)。2、默认配置新建.Net Core Web Api项目&a…

将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1.3X

阅读文本大概需要 3.3 分钟。在上一篇文章《ASP.Net Core 运行错误 Http Error 502.5 解决办法》的最后有提到说&#xff0c;最推荐的升级办法是从2.0升级到2.1X版本.操作如下项目的例子直接使用https://github.com/52ABP/52ABP.School 作为对象&#xff0c;毕竟他正好是.NET C…

.net core 多版本如何选择

在讲述.net core多版本之前&#xff0c;我们先理解一下.net core sdk与.net core runtime之前的联系与区别&#xff0c;根据官网的解释我们可以简单地理解为&#xff1a;sdk是在开发过程中进行使用&#xff0c;而runtime是在项目发布后作为运行环境进行安装的&#xff0c;runti…

好代码是管出来的——使用GitHub实现简单的CI/CD

软件开发一般来说是一项团队作业&#xff0c;在本系列文章开始就提到过软件的编码是由一个团队“并行”完成的&#xff0c;为了保证编码任务正常完成&#xff0c;首先引入版本控制工具来完成代码管理&#xff0c;为了保证代码质量引入了代码分析器以及代码测试。版本控制工具可…

数据告诉你:中年并不只有危机,创业或许正当时

人们普遍认为最成功的企业家都是年轻人。比尔?盖茨、史蒂夫?乔布斯和马克?扎克伯格都在自己20岁出头的时候&#xff0c;建立起了日后改变世界的伟大公司。这些著名的案例是否反映了一种可以被普遍推广的模式呢&#xff1f;风险投资机构和媒体似乎赞成一点。我们分析了过去十…

ASP.NET Core 2.0 MVC项目实战

一、前言毕业后入职现在的公司快有一个月了&#xff0c;公司主要的产品用的是C/S架构&#xff0c;再加上自己现在还在学习维护很老的delphi项目&#xff0c;还是有很多不情愿的。之前实习时主要是做.NET的B/S架构的项目&#xff0c;主要还是用的那种传统的开发模式&#xff0c;…

WebApiClient百度地图服务接口实践

1. 文章目的随着WebApiClient的不断完善&#xff0c;越来越多开发者选择WebApiClient替换原生的HttpClient&#xff0c;然而在应用到实际项目中多多少少会遇到一些项目结合上的疑问和困难&#xff0c;本文将以WebApiClient使用者的身份&#xff0c;在Asp.net core mvc项目中使用…

Dependency injection in .NET Core的最佳实践

我们知道依赖注入&#xff08;DI&#xff09;是一种实现对象及其协作者或依赖关系之间松散耦合的技术。 ASP.NET Core包含一个简单的内建容器来支持构造器注入。我们试图将DI的最佳实践带到.NET Core应用程序中&#xff0c;这表现在以下方面&#xff1a;构造器注入注册组件DI i…

CodeForces - 1189A ----Keanu Reeves

原题传送 INPUT Output Examples 题意&#xff1a; 有个长度我n的字符串&#xff0c;然后把它分成k分&#xff0c;要使每份都good且为正数&#xff08;good的要求为该数中0和1的个数不同&#xff09;&#xff0c;求输出最小的结果&#xff08;答案不唯一输出一个即可&#xf…

WebApiClient的接口输入验证

1. 文章目的随着WebApiClient的不断完善&#xff0c;越来越多开发者选择WebApiClient替换原生的HttpClient&#xff0c;本文将介绍WebApiClient的接口参数输入有效性验证的新特性。2.DataAnnotations介绍在asp.net mvc服务端编程中&#xff0c;我们在创建模型的时候&#xff0c…

CodeForces - 1189B Number Circle

原题传送器<----点我 **题意&#xff1a;**n个数字&#xff0c;请你给它们排个序围成一个环&#xff0c;满足任意一个数两边的数之和大于它本身&#xff0c;例如题目给的图&#xff08;左图为正确答案&#xff09;&#xff0c;如果不存在这样的环就输出NO。 难度★ 题解 …

在 .NET Core 应用中使用 NHibernate

NHibernate 最近发布了 5.1.3 版本&#xff0c; 支持 .NET Standard 2.0 &#xff0c; 这意味着可以在 .NET Core 2.0 应用中使用&#xff0c; 本文就已 WebAPI 应用为例&#xff0c; 介绍一下如何在 .NET Core 应用中如何使用 NHibernate 。1、 新建一个基于 .NET Core 的 We…

【数学】礼物(jzoj 2129)

礼物 jzoj 2129 题目大意 有1……n,n个礼物盒&#xff0c;第i个礼物盒有i个礼物&#xff0c;现在让你选2个礼物盒&#xff0c;使他是k的倍数 输入样例 1 1 3 2 5 2 50 50 0 0输出样例 0 1 4 24数据范围 20%的数据N<100; 80%的数据K<1000; 每个输入文件最多有200行…

微信小程序与AspNetCore SignalR聊天实例

微信小程序与aspnetcore signalr实例本文不对小程序与signalr做任何介绍,默认读者已经掌握aspnetcore Signalr文档小程序文档写在之前SignalR没有提供小程序使用的客户端js,所以本人参考signlar.js写了小程序版signalr-client.js 代码开源&#xff0c;地址 https://github.com/…