bzoj1089
题解:
递推
f[i]=f[i-1]^n+1
ans=f[d]-f[d-1]
代码:
#include<bits/stdc++.h>
using namespace std;
int n,m;
struct zz
{
int len,a[];
void init()
{
memset(a,,sizeof a);
len=;
}
void write()
{
printf("%d",a[len]);
for (int i=len-;i;i--)
{
if (a[i]<)putchar('');
if (a[i]<)putchar('');
if (a[i]<)putchar('');
printf("%d",a[i]);
}
}
}f[];
zz cf(zz x,zz y)
{
zz z;
z.init();
z.len=x.len+y.len-;
for (int i=;i<=x.len;i++)
for (int j=;j<=y.len;j++)
z.a[i+j-]+=x.a[i]*y.a[j];
for (int i=;i<=z.len;i++)
{
z.a[i+]+=z.a[i]/;
z.a[i]%=;
}
if (z.a[z.len+])z.len++;
return z;
}
zz jf(zz z)
{
z.a[]++;
for (int i=;i<=z.len;i++)
{
z.a[i+]+=z.a[i]/;
z.a[i]%=;
}
if (z.a[z.len+])z.len++;
return z;
}
zz zf(zz x,zz y)
{
for (int i=;i<=x.len;i++)
{
x.a[i]-=y.a[i];
if (x.a[i]<)x.a[i+]--,x.a[i]+=;
}
while (x.len>&&x.a[x.len]==)x.len--;
return x;
}
int main()
{
scanf("%d%d",&n,&m);
if (m==)
{
puts("");
return ;
}
f[].a[]=f[].len=;
for (int i=;i<=m;i++)
{
f[i].a[]=f[i].len=;
for (int j=;j<=n;j++)
f[i]=cf(f[i],f[i-]);
f[i]=jf(f[i]);
}
zz ans=zf(f[m],f[m-]);
ans.write();
}
bzoj1089的更多相关文章
- 【BZOJ1089】[SCOI2003]严格n元树(高精度,动态规划)
[BZOJ1089][SCOI2003]严格n元树(高精度,动态规划) 题面 BZOJ 洛谷 题解 设\(f[i]\)表示深度为\(i\)的\(n\)元树个数.然后我们每次加入一个根节点,然后枚举它的 ...
- [BZOJ1089][SCOI2003]严格n元树(递推+高精度)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1089 分析: 第一感觉可以用一个通式求出来,但是考虑一下很麻烦,不好搞的.很容易发现最 ...
- BZOJ1089: [SCOI2003]严格n元树
1089: [SCOI2003]严格n元树 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 762 Solved: 387[Submit][Status ...
- 【bzoj1089】严格n元树
Description 如果一棵树的所有非叶节点都恰好有n个儿子,那么我们称它为严格n元树.如果该树中最底层的节点深度为d(根的深度为0),那么我们称它为一棵深度为d的严格n元树.例如,深度为2的严格 ...
- BZOJ1089:[SCOI2003]严格n元树(DP,高精度)
Description 如果一棵树的所有非叶节点都恰好有n个儿子,那么我们称它为严格n元树.如果该树中最底层的节点深度为d (根的深度为0),那么我们称它为一棵深度为d的严格n元树.例如,深度为2的严 ...
- BZOJ1089 [SCOI2003]严格n元树 【dp + 高精】
Description 如果一棵树的所有非叶节点都恰好有n个儿子,那么我们称它为严格n元树.如果该树中最底层的节点深度为d (根的深度为0),那么我们称它为一棵深度为d的严格n元树.例如,深度为2的严 ...
- bzoj1089严格n元树
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1089 这是一种套路:记录“深度为 i ”的话,转移需要讨论许多情况:所以可以记录成“深度&l ...
- bzoj1089严格n元树——DP+高精度
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1089 f[d]为深度小于等于d的树的个数: 从根节点出发,有n个子树,乘法原理可以得到 f[ ...
- bzoj1089 [SCOI2003]严格n元树(dp+高精)
1089: [SCOI2003]严格n元树 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1899 Solved: 954[Submit][Statu ...
随机推荐
- Python 开发环境搭建
Python分别有两个大的版本,分别是2和3 下载地址:Python-3.6.2 Python-2.7.13 现在安装路径:D:\Program Files\Python 安装完成以后要安装 pi ...
- Springboot2.x 拦截器
一,单个拦截器,实现接口 HandlerInterceptor @Component public class MyInterceptor1 implements HandlerIntercepto ...
- Java初始化块的作用
1.使代码更简洁 eg: public class Test { private void init() { System.out.println("初始化状态"); } publ ...
- Linux command line exercises for NGS data processing
by Umer Zeeshan Ijaz The purpose of this tutorial is to introduce students to the frequently used to ...
- React Native基础概念和基础认识
学习地址:https://github.com/vczero/react-native-lesson 当我们初始化一个RN项目的时候主要的是index.ios.js文件和index.android.j ...
- Python matplot画散列图
同matlab一样,matplot也可画散列图scatter. import numpy as np import matplotlib.pyplot as plt #fig = plt.figure ...
- html 画出矩形,鼠标弹起,矩形消失
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 使用CMake在Linux下编译tinyxml静态库
环境:CentOS6.6+tinyxml_2_6_21.下载并解压tinyxml_2_6_2.zip unzip tinyxml_2_6_2.zip 2.在tinyxml文件夹里创建一个CMakeLi ...
- cookie session localstorage sessionStorage区别
cookie:http://www.cnblogs.com/Darren_code/archive/2011/11/24/Cookie.html 重要特点: 1.cookie 有大小设置,有过期时间设 ...
- TP5框架whereor
whereOr方法 Db::table('think_user') ->where('name','like','%thinkphp') ->whereOr('title','like', ...