网上说的是什么基尔霍夫矩阵,没学过这个,打个表找下规律,发现

w[i]=3*w[i-1]-w[i-2]+2;

然后写个高精直接递推就行了

//By BLADEVIL
var
n :longint;
a, b, c :array[..] of longint;
w :array[..] of ansistring;
i :longint; function plus(s1,s2:ansistring):ansistring;
var
len :longint;
i :longint;
s :ansistring; begin
fillchar(a,sizeof(a),);
fillchar(b,sizeof(b),);
fillchar(c,sizeof(c),);
len:=length(s1);
for i:= to len do a[(len-i) div +]:=a[(len-i) div +]*+ord(s1[i])-;
len:=length(s2);
for i:= to len do b[(len-i) div +]:=b[(len-i) div +]*+ord(s2[i])-;
if length(s1)>len then len:=length(s1);
len:=(len+) div ;
for i:= to len do
begin
c[i]:=c[i]+a[i]+b[i];
c[i+]:=c[i+]+c[i] div ;
c[i]:=c[i] mod ;
end;
inc(len);
plus:='';
for i:=len downto do
begin
str(c[i],s);
if c[i]< then plus:=plus+'';
if c[i]< then plus:=plus+'';
if c[i]< then plus:=plus+'';
plus:=plus+s;
end;
while (plus[]='') and (length(plus)>) do delete(plus,,);
end; function jian(s1,s2:ansistring):ansistring;
var
len :longint;
i :longint;
s :ansistring;
begin
fillchar(a,sizeof(a),);
fillchar(b,sizeof(b),);
fillchar(c,sizeof(c),);
len:=length(s1);
for i:= to len do a[(len-i) div +]:=a[(len-i) div +]*+ord(s1[i])-;
len:=length(s2);
for i:= to len do b[(len-i) div +]:=b[(len-i) div +]*+ord(s2[i])-;
len:=(length(s1)+) div ;
for i:= to len do c[i]:=a[i]-b[i];
for i:= to len do if c[i]< then
begin
c[i]:=c[i]+;
dec(c[i+]);
end;
jian:='';
for i:=len downto do
begin
str(c[i],s);
if c[i]< then jian:=jian+'';
if c[i]< then jian:=jian+'';
if c[i]< then jian:=jian+'';
jian:=jian+s;
end;
while (jian[]='') and (length(jian)>) do delete(jian,,);
end; begin
read(n);
w[]:=''; w[]:='';
for i:= to n do
w[i]:=plus(jian(plus(plus(w[i-],w[i-]),w[i-]),w[i-]),'');
writeln(w[n]);
end.

bzoj 1002 找规律(基尔霍夫矩阵)的更多相关文章

  1. bzoj 1002 [FJOI2007]轮状病毒 高精度&&找规律&&基尔霍夫矩阵

    1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 2234  Solved: 1227[Submit][Statu ...

  2. bzoj1002 轮状病毒 暴力打标找规律/基尔霍夫矩阵+高斯消元

    基本思路: 1.先观察规律,写写画画未果 2.写程序暴力打表找规律,找出规律 1-15的答案:1    5    16    45    121 320 841     2205   5776 151 ...

  3. BZOJ 1002 轮状病毒 (基尔霍夫矩阵)

    题解:http://vfleaking.blog.163.com/blog/static/17480763420119685112649/ #include <iostream> #inc ...

  4. 【BZOJ】1002:轮状病毒(基尔霍夫矩阵【附公式推导】或打表)

    Description 轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的.一个N轮状基由圆环上N个不同的基原子和圆心处一个核原子构成的,2个原子之间的边表示这2个原子之间的信息通道.如下图 ...

  5. BZOJ 1002: [FJOI2007]轮状病毒【生成树的计数与基尔霍夫矩阵简单讲解+高精度】

    1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 5577  Solved: 3031[Submit][Statu ...

  6. BZOJ 4031 HEOI2015 小Z的房间 基尔霍夫矩阵+行列式+高斯消元 (附带行列式小结)

    原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4031 Description 你突然有了一个大房子,房子里面有一些房间.事实上,你的房子可 ...

  7. BZOJ1002 FJOI2007 轮状病毒 【基尔霍夫矩阵+高精度】

    BZOJ1002 FJOI2007 轮状病毒 Description 轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的.一个N轮状基由圆环上N个不同的基原子和圆心处一个核原子构成的,2个原 ...

  8. [bzoj1002] [FJOI2007]轮状病毒轮状病毒(基尔霍夫矩阵)

    Description 轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的.一个N轮状基由圆环上N个不同的基原子 和圆心处一个核原子构成的,2个原子之间的边表示这2个原子之间的信息通道.如下 ...

  9. bzoj1002: [FJOI2007]轮状病毒(基尔霍夫矩阵)

    1002: [FJOI2007]轮状病毒 题目:传送门 题解: 决定开始板刷的第一题... 看到这题的时候想:这不就是求有多少种最小生成树的方式吗? 不会啊!!!%题解... 什么鬼?基尔霍夫矩阵?? ...

随机推荐

  1. Python的文件输入输出,如何追加内容,读取内容,添加内容

    python主要的文件打开的几种访问模式 模式可以为读模式('r').写模式('w')或追加模式('a'),当然还有rb.wb.ab.r+.w+.a+.rb+.wb+.ab+,然而实际从代码上我也没看 ...

  2. javac、jar使用实录

    因项目管理部署需要,记录一下过程,以免下次忘记了,再次使用又需要重头再来,只记录正确的操作方式,可能会提到某些错误 建立项目所在目录F:\www 案例一 其下建立项目的java源文件的包目录结构.ja ...

  3. ES5新增数组方法(3):some

    检查数组元素中是否有元素符合指定. // 数组中的元素部分满足指定条件返回true let arr = [1, 3, 5, 7, 9]; console.log(arr.some((value, in ...

  4. 【app.json】配置说明,不断更新中

    app.json文件用来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置多 tab 等. 注意: 1) json配置中键名.键值必须使用双引号,不能使用单引号. 2) 以 ...

  5. WOW.js 的使用方法

    WOW.js 是一个非常轻量级的动画效果插件,使用它可以组合多种炫酷的效果. 使用WOW.js可以实现我们在网站上常看到的,页面滚动到指定区域时就显示动画的效果. 1.要使用WOW.js必须引入:WO ...

  6. CodeForces-1132F Clear the String

    题目链接 https://vjudge.net/problem/CodeForces-1132F 题面 Description You are given a string \(s\) of leng ...

  7. NO10——各种欧几里得

    int gcd(int n,int m)//n>m { //最大公约数 int r; while(m) { r = n%m; n = m; m = r; } return n; } int kg ...

  8. Linux C++线程池实例

    想做一个多线程服务器测试程序,因此参考了github的一些实例,然后自己动手写了类似的代码来加深理解. 目前了解的线程池实现有2种思路: 第一种: 主进程创建一定数量的线程,并将其全部挂起,此时线程状 ...

  9. lintcode-136-分割回文串

    136-分割回文串 给定一个字符串s,将s分割成一些子串,使每个子串都是回文串. 返回s所有可能的回文串分割方案. 样例 给出 s = "aab",返回 [ ["aa&q ...

  10. C++ Profiler工具之初体验

    http://www.cnblogs.com/likwo/archive/2012/12/20/2826988.html 转 http://www.cnblogs.com/lenolix/archiv ...