BZOJ1002 轮状病毒
Description
轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的。一个N轮状基由圆环上N个不同的基原子
和圆心处一个核原子构成的,2个原子之间的边表示这2个原子之间的信息通道。如下图所示
N轮状病毒的产生规律是在一个N轮状基中删去若干条边,使得各原子之间有唯一的信息通道,例如共有16个不
同的3轮状病毒,如下图所示

Input
第一行有1个正整数n
Output
计算出的不同的n轮状病毒数输出
基尔霍夫矩阵(啥...) 递推式f(i)=f(i-1)*3-f(i-2)+2
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
;
int f1[maxn],f2[maxn];
void add(int* a,int *b,int* c){
memset(c,,sizeof(c));
;
;i<maxn;i++){
c[i]=a[i]+b[i]+x;
x=c[i]/;c[i]%=;
}
}
void del(int *a,int *b,int *c){//保证a>b
memset(c,,sizeof(c));
;i<maxn;i++){
if(a[i]<b[i]){
a[i]+=;
a[i+]--;
}
c[i]=a[i]-b[i];
}
}
void g(){
int t1[maxn],t2[maxn],t3[maxn],t4[maxn],t5[maxn];
memset(t4,,]=;
add(f1,f1,t1),add(t1,f1,t2);
del(t2,f2,t3);add(t3,t4,t5);
;i<maxn;i++) f2[i]=f1[i],f1[i]=t5[i];
}
void printAns(){
;i>=;i--){
) continue;
;j--){
printf("%d",f1[j]);
}break;
}
}
void init(){
memset(f1,,sizeof(f1));
memset(f2,,sizeof(f2));
f1[]=,f2[]=;
}
int main()
{
init();
int p;scanf("%d",&p);
;i<p-;i++) g();
printAns();
;
}
//高精写的太丑了...然而这还是调了半天才对...
From Linux
BZOJ1002 轮状病毒的更多相关文章
- BZOJ-1002 轮状病毒 高精度加减+Kirchhoff矩阵数定理+递推
1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 3543 Solved: 1953 [Submit][Statu ...
- [bzoj1002]轮状病毒-矩阵树定理
Brief Description 求外圈有\(n\)个点的, 形态如图所示的无向图的生成树个数. Algorithm Design \[f(n) = (3*f(n-1)-f(n-2)+2)\] Co ...
- bzoj1002轮状病毒
高精度练习题 根据什么什么基尔霍夫矩阵 反正就是高精度练习 #include<iostream> #include<cstdio> using namespace std; s ...
- bzoj1002 轮状病毒 暴力打标找规律/基尔霍夫矩阵+高斯消元
基本思路: 1.先观察规律,写写画画未果 2.写程序暴力打表找规律,找出规律 1-15的答案:1 5 16 45 121 320 841 2205 5776 151 ...
- 【bzoj1019】汉诺塔
[bzoj1019]汉诺塔 题意 传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1019 分析 思路1:待定系数+解方程 设\(f[n]\)为 ...
- 【正经向】NOIP2017烤后总结
[正经向]NOIP2017烤后总结 Warning: 合法的评论(举例): 博主辣么juruo还来参加NOIP,不要脸 不合法的评论(举例): %%%%%博主太强了,我菜爆了 博主将删除不合法评论,& ...
- bzoj1000~1025
以后还是这样 25道题一起发 看着爽 noip失利之后发粪涂墙 刷了一波bzoj 题解: bzoj1000 A+B问题 这题不同的人有不同的写法,我写了个线段树套Treap,应该还是挺简单的 但是看别 ...
- 【BZOJ1002】[ZJOI2006]轮状病毒
[BZOJ1002]轮状病毒 题面 bzoj 题解 统计个数显然直接矩阵树定理,找规律截这里 打标如下: #include <iostream> #include <cstdlib& ...
- BZOJ1002【FJOI2007】轮状病毒
1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 6917 Solved: 3777[Submit][Statu ...
随机推荐
- 【springBoot】springBoot返回json的一个问题
首先看下面的代码 @Controller @RequestMapping("/users") public class UserController { @RequestMappi ...
- C/C++代码静态分析插件 SourceInsight_Scan
sourceinsight-scan 是一款集成在 SourceInsight 中的c/c++代码静态分析插件,集成了cppcheck,coverity,pclint等业界优秀的静态分析工具的优点. ...
- HelloHibernate详解
1. Configuration管理读取配置文件 //读取src下hibernate.properties,不推荐使用 Configuration cfg = new Configuration(); ...
- PLSQL_性能优化系列06_Oracle Soft Parse / Hard Parse软硬解析
2014-08-11 Createed By BaoXinjian
- studio adb连接不上手机 ADB server didn't ACK
问题描述:在eclipse的Logcat出现错误 [2014-01-08 14:00:07 - adb] ADB server didn't ACK [2014-01-08 14:00:07 - ad ...
- 帝国CMS商城功能高级使用
一.常见问题1.为什么自定义模型加入购物车提示“非商城表的信息”?答:模型要使用商城的功能,要先到:后台>商城>商城参数设置:“指定使用商肠能的数据表”勾选你这个自定义模型表,才可以使用. ...
- android实现 服务器功能
package com.weijia.tests; import java.io.IOException; import java.net.InetSocketAddress; import java ...
- 模拟实现兼容低版本IE浏览器的原生bind()函数功能
模拟实现兼容低版本IE浏览器的原生bind()函数功能: 代码如下: if(!Function.prototype.bind){ Function.prototype.bind=function( ...
- Ubuntu编写开机自启动脚本(转载)
From:http://blog.csdn.net/marujunyy/article/details/8466255 1.首先编写一个简单的shell脚本test.sh #! /bin/bash e ...
- Python补充01 序列的方法
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在快速教程中,我们了解了最基本的序列(sequence).回忆一下,序列包含有定值 ...