http://115.28.138.223:81/view.page?opid=4

这道题写的我醉醉的,想建一棵指定深度的树最后统计满足条件的个数

居然没去考虑这样必然超时!!!代码写的也是醉了,把没完成的代码先贴出来,好好嘲讽下自己

(╬▔皿▔)

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int floorer,num,lable;//0 none ; 1 1 ; 3 3 ; 4 1&3
bool shine1,shine0,shine3,shit,shit0;
int x[]={,,,};
int y[]={,,,};
int donser1=,donser2=,donser3=,donser4=,donser5=;
bool dong1=false,dong2=false,dong3=false,dong4=false,dong5=false;
void creatree(int lab,int flooor)
{ cout<<"-------->floor:"<<flooor<<"(12)"<<endl;
if((flooor==floorer+)&&shine0&&shine1&&shine3){cout<<"*********************************************";num++;}
if(flooor==floorer+){cout<<endl<<"&return "<<endl<<endl;return;}
if(shit&&shit0)
{
for(int i=;i<;i++)
{
cout<<"lab -1 : "<<y[i]<<"(19)"<<endl;
if(y[i]==){dong1=shine0;shine0=;donser1=;}
if(y[i]==){dong1=shine1;shine1=;lab=;donser1=;}
if(y[i]==){dong1=shine3;shine3=;lab=;donser1=;}
if(flooor==floorer+){cout<<"++++"<<"(23)"<<endl;return;}
int ii=flooor;
creatree(lab,++ii);
if(donser1==){shine0=dong1;donser1=;}
if(donser1==){shine1=dong1;donser1=;}
if(donser1==){shine3=dong1;donser1=;}
}
}
if(lab==)
{
for(int i=;i<;i++)
{
cout<<"lab 0 : "<<x[i]<<"(31)"<<endl;
if(y[i]==){dong2=shine0;shine0=;donser2=;}
if(y[i]==){dong2=shine1;shine1=;lab=;donser2=;}
if(y[i]==){dong2=shine3;shine3=;lab=;donser2=;}
if(flooor==floorer+){cout<<"????"<<"(35)"<<endl;return;}
int ii=flooor;
creatree(lab,++ii);
if(donser2==){shine0=dong2;donser2=;}
if(donser2==){shine1=dong2;donser2=;}
if(donser2==){shine3=dong2;donser2=;}
}
}
if(lab==)
{
for(int i=;i<;i++)
{
cout<<"lab 1 : "<<x[i]<<"(43)"<<endl;
if(x[i]==){dong3=shine3;shine3=;lab=;shit=false;donser3=;}
if(flooor==floorer+){cout<<"...."<<"(45)"<<endl;return;}
int ii=flooor;
creatree(lab,++ii);
if(donser3==){shine3=dong3;donser3=;}
}
}
if(lab==)
{
for(int i=;i<;i++)
{
cout<<"lab 3 : "<<y[i]<<"(43)"<<endl;
if(!y[i]==&&!shine1){shit=true;}
if(y[i]==) {shit=false;dong4=shine1;shine1=;lab=;donser4=;}
if(flooor==floorer+){cout<<"````"<<"(56)"<<endl;return;}
int ii=flooor;
creatree(lab,++ii);
if(donser4==){shine1=dong4;donser4=;}
}
}
if(lab==)
{
for(int i=;i<;i++)
{
cout<<"lab 4 : "<<y[i]<<"(64)"<<endl;
if(flooor==floorer+){cout<<"----"<<"(65)"<<endl;return;}
int ii=flooor;
creatree(lab,++ii);
}
}
}
int main()
{
int n,flooor;
while(cin>>n)
{
floorer=n;
shine1=shine0=shine3=shit=shit0=false;
num=lable=;
flooor=;
creatree(,flooor);
cout<<num<<endl;
cout<<endl<<endl;
cout<<"+++++++++++++++++++++++++++++++++++++++++++++++++++++++";
shine1=shine0=shine3=shit=false;
shit0=true;
creatree(,flooor);
cout<<num<<endl;
cout<<endl<<endl;
cout<<"+++++++++++++++++++++++++++++++++++++++++++++++++++++++";
shine1=shine0=shine3=shit=false;
shit0=true;
creatree(,flooor);
cout<<num<<endl;
}
return ;
}
#include<iostream>
using namespace std;
int main()
{
long long mod=;
long long n;
cin>>n;
long long**donser=new long long*[n+];
for(long long i=; i<n+; i++)
donser[i]=new long long[];
for(long long i=; i<; i++)
donser[][i]=;
/*6种状态
*0--剩013
*1--剩13
*2--剩01
*3--剩3
*4--剩1
*5--无
*/
for(long long i=; i<=n; i++)
{
long long j=i-;
donser[i][]=;
donser[i][]=(donser[j][]+donser[j][]*)%mod;
donser[i][]=(donser[j][]+donser[j][])%mod;
donser[i][]=(donser[j][]+donser[j][]*)%mod;
donser[i][]=(donser[j][]+donser[j][]+donser[j][]*)%mod;
donser[i][]=(donser[j][]+donser[j][]+donser[j][]*)%mod;
}
cout<<donser[n][]<<endl;
return ;
}

CCF 模拟D 动态规划的更多相关文章

  1. codeforces 792CDivide by Three(两种方法:模拟、动态规划

    传送门:https://codeforces.com/problemset/problem/792/C 题意:给你一个字符串,要求让你删除最少个数的元素,使得最终答案是没有前导0并且是3的倍数. 题解 ...

  2. CCF 模拟试题——出现次数最多的数 官方答案解析及自己写的正确答案

    前几天知道的CCF计算机职业资格认证考试,觉得好像比软考含金量高一些,就去了解了一下,做了模拟试题中的 “出现次数最多的数” 这道题,我的算法和官方答案算法不同,个人觉得觉得官方的好一点,没那么繁琐, ...

  3. 2018SCin tsyzDay2 模拟赛-动态规划(简单的)

    内心OS:简单?????还是我太弱了. 期望得分:100+100+0+0+0+0+随机暴力的点==200 实际得分:0+100+10+0+10+0==120 您知道我第一题为什么错了嘛??文件在混乱中 ...

  4. CCF模拟题 窗口

    窗口 时间限制: 1.0s 内存限制: 256.0MB   问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域.窗口的边界上的点也属于该窗口.窗口之间有层次的 ...

  5. CCF 模拟E DFS深搜

    http://115.28.138.223:81/view.page?opid=5 这道题问的很怪. 起点DFS,每一个点还要DFS一次,统计不能到终点的个数 数据量不大这样做也能AC #includ ...

  6. CCF 模拟C 找最大矩形+输入输出外挂

    http://115.28.138.223:81/view.page?opid=3 统计出连续的最长乘以当前高度,找最大即可 #include<iostream> #include< ...

  7. CCF 模拟B 无脑循环+输入输出外挂

    http://115.28.138.223:81/view.page?opid=2#code 代码一有WA点80分 #include<iostream> #include<cstdi ...

  8. CCF 模拟A 无脑大循环

    http://115.28.138.223:81/view.page?opid=1 第一题用一组STL函数查找即可 #include<iostream> #include<cstdi ...

  9. noip模拟赛 动态规划

    题目描述LYK在学习dp,有一天它看到了一道关于dp的题目.这个题目是这个样子的:一开始有n个数,一段区间的价值为这段区间相同的数的对数.我们想把这n个数切成恰好k段区间.之后这n个数的价值为这k段区 ...

随机推荐

  1. 9月9日下午HTML样式表(宽度和高度、背景字体、对齐方式边界与边框)

    样式表 一.大小 1.width   宽度 2.height  高度 <div style="width:200px; height:200px"></div&g ...

  2. python --- Python中的callable 函数

    python --- Python中的callable 函数 转自: http://archive.cnblogs.com/a/1798319/ Python中的callable 函数 callabl ...

  3. bash: ifconfig: command not found解决方法

    1.问题: #ifconfig bash: ifconfig: command not found 2.原因:非root用户的path中没有/sbin/ifconfig ,其它的命令也可以出现这种情况 ...

  4. mono中显示debug信息(filename/lineno)

    一直发现 mono 的 traceback 没有 fliename.lineno,很奇怪.研究了下,原来编译和运行时要加参数的. dmcs -debug /r:xunit.dll /t:library ...

  5. webstorm 文件历史找回~ 恢复正确状态~

    事情的经过时这样的~  我写好的HTML 我新下载了sublime text3 用这个打开了下 结果都变乱码了~ 大概截个图 都恢复了 就不瞎搞了 webstorm有错误的记录都有真好~ 恢复的具体操 ...

  6. BloomFilter 与 Cuckoo Filter

    BloomFilter 与 CuckooFilter Bloom Filter 原理 Bloom Filter是一种空间效率很高的随机数据结构,它的原理是,当一个元素被加入集合时,通过K个相互独立的H ...

  7. SICP— 第一章 构造过程抽象

    SICP  Structure And Interpretation Of Computer Programs 中文第2版 分两部分  S 和 I 第一章 构造过程抽象 1,程序设计的基本元素 2,过 ...

  8. css书写规则总结

    1. JavaScript钩子使用的class不能是css class,要加j或j-前缀 2. 选择器 2.1 css选择器尽量简短,层级要少,最好是1-2层 例如:.nav{} 优于 ul.nav{ ...

  9. Android Studio-设置快速转换局部变量为成员变量

    "File"-"Settings"-"KeyMap"-"Main Menu"-"Refactor"- ...

  10. 推荐 10 个超棒的 CSS3 代码生成工具

    新的在线工具和 WebApp 帮助开发者快速地创建网站而不用写代码.前端开发已经在框架和代码库方面有了很大的进展. 但是许多开发者已经忘记了代码生成器在构建网站时的价值.下面的资源是完全免费的 Web ...