AC日记——[FJOI2007]轮状病毒 bzoj 1002
思路:
打表找规律:
dp[i]=dp[i-1]*3-dp[i-2]+2;
套个高精就a了;
代码:
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm> using namespace std; struct NumberType {
int len; int ai[]; void print()
{
for(int i=len;i>;i--) putchar(ai[i]+'');
} void mul(NumberType a)
{
len=a.len;
for(int i=a.len;i>;i--) ai[i]=a.ai[i]*;
for(int i=;i<=a.len;i++) ai[i+]+=ai[i]/,ai[i]%=;
while(ai[len+]) len++;
} void minus(NumberType a)
{
for(int i=;i<=len;i++)
{
if(ai[i]<a.ai[i]) ai[i]+=,ai[i+]--;
ai[i]-=a.ai[i];
}
while(!ai[len]) len--;
} void updata()
{
ai[]+=;
for(int i=;i<=len;i++)
{
if(ai[i]>) ai[i]-=,ai[i+]+=;
else break;
}
while(ai[len+]) len++;
}
};
struct NumberType dp[]; int n; int main()
{
scanf("%d",&n);
dp[].len=,dp[].len=,dp[].ai[]=;
for(int i=;i<=n;i++) dp[i].mul(dp[i-]),dp[i].minus(dp[i-]),dp[i].updata();
dp[n].print();
return ;
}
AC日记——[FJOI2007]轮状病毒 bzoj 1002的更多相关文章
- AC日记——[Hnoi2017]影魔 bzoj 4826
4826 思路: 主席树矩阵加减+单调栈预处理: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 200005 ...
- AC日记——[LNOI2014]LCA bzoj 3626
3626 思路: 离线操作+树剖: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 #defin ...
- AC日记——[ZJOI2012]网络 bzoj 2816
2816 思路: 多个LCT: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 10005 #define l ...
- AC日记——[SCOI2009]游戏 bzoj 1025
[SCOI2009]游戏 思路: 和为n的几个数最小公倍数有多少种. dp即可: 代码: #include <bits/stdc++.h> using namespace std; #de ...
- AC日记——[HNOI2014]世界树 bzoj 3572
3572 思路: 虚树+乱搞: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 300005 #define ...
- AC日记——NOI2016区间 bzoj 4653
4653 思路: 线段树,指针滑动: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1000005 #def ...
- AC日记——Rmq Problem bzoj 3339
3339 思路: 恶心: 代码: #include <cstdio> #include <cstring> #include <iostream> #include ...
- AC日记——[HNOI2008]越狱 bzoj 1008
1008 思路: 越狱情况=总情况-不越狱情况: 代码: #include <cstdio> #include <cstring> #include <iostream& ...
- AC日记——[Ahoi2013]作业 bzoj 3236
3236 思路: 莫队+树状数组维护: 代码: #include <cmath> #include <cstdio> #include <cstring> #inc ...
随机推荐
- B - 寻找M
B - 寻找M Time Limit: 1000/1000MS (C++/Others) Memory Limit: 65536/65536KB (C++/Others) Problem Descri ...
- 【Linux】Linux修改openfile和max user processes?
#当时测试虚机为centos7.4版本: # 在/etc/security/limits.conf文件末尾添加如下命令: * soft nproc 1314 * hard ...
- win7 C/C++,QT安装环境总结
1. 安装VMware,但是不能用,发现是权限问题,解决方式:使用管理员运行模式即可: 2. 安装win7 ultimate x64,找了半天找不到密钥,只要用激活软件,目前来说系统可用 3. 安装 ...
- CSS设计指南之伪类
伪类这个叫法源自它们与类相似,但实际上并没有类会附加到标记中的标签上.伪类分两种. UI伪类会在HTML元素处于某个状态时(比如鼠标指针位于链接上),为该元素应用CSS样式. 结构化伪类会在标记中存在 ...
- Hibernate关联映射之_多对一
多对一 Employee-Department 对于 员工 和 部门 两个对象,从员工的角度来看,就是多对一的一个关系--->多个员工对应一个部门 表设计: 部门表:department,id主 ...
- BZOJ4563 HAOI2016放棋子(高精度)
没看清题还以为是要求数最大匹配数量……注意到任意障碍不在同一行同一列,且恰好有n个障碍,不妨通过交换列使得第i行第i列均有障碍.那么就是个错排了.居然wa了一发简直没救. #include<io ...
- Spring源码解析-事件
Spring事件的组件 主要是3个组件: 1.ApplicationEvent 事件 2.ApplicationListener 监听器,对事件进行监听 3.ApplicationEventMul ...
- [MySQL] explain执行计划解读
Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得 ...
- Educational Codeforces Round 11 A
A. Co-prime Array time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- ibeacon UUID
import sys; import uuid; s=uuid.uuid4().hex #s="f6bc15e0939046679be1866ec8a199dc" sys.stdo ...