摘要:
最后的总结,最终没有看题解,自己想出来四个剪枝,刚开始四个剪枝加上一直无法ac,正在抓狂的时候发现有个地方写错了,导致许多新的枝条,改一下,ac了,这一题也没想象中的那么难,加油。后记:看了题解后搜索顺序改了一下,直接导致剪枝四没有用上,发现慢的出奇,15s左右才能出解,看来剪枝四效率很高呢。一看就是搜索,写一下裸的过了5个点{ID:zhengha3 PROG:cryptcow LANG:PASCAL}program aa;const z='Begin the Escape execution at the Break of Dawn';var s:string; i,j:lo 阅读全文
摘要:
Kitty猫基因编码【题目描述】小可可选修了基础生物基因学。教授告诉大家SuperSamuel星球上Kitty猫的基因的长度都是2的正整数次幂2k(k≤8),全是由两种不同的基因单元组成的。这两种不同的基因单元分别记成0和1,于是Kitty猫基因可以写成一个01串表达式s。为了便于分析和降低数据存储量,教授发明了ABC编码规则。该编码规则是不断地按照对 Kitty 猫基因 01 串表达式s进行改写,直至最终被改写成只含有字符“A”、“B”、“C”的符号串。例如:T(01001011)=CT(0100)T(1011)=CCT(01)T(00)CT(10)T(11)=CCCT(0)T(1)ACCT 阅读全文
摘要:
例题1:一个射击运动员打靶,靶一共有10环,连开10枪打中90环的可能性有多少种?请用递归算法编程实现。[中国某著名通信企业H面试题]解析:靶上一共有10种可能——1环到10环,还有可能脱靶,那就是0环,加在一起共11种可能。这是一道考循环和递归的面试题。我们在这个程序中将利用递归的办法实现打靶所有可能的演示,并计算出结果。(可以连续用10个循环语句来表示程序)for (i1=0;i1<=10;i1++){ for (i2=0;i2<=10;i2++) { for (i3=0;i3<=10;i3++) { ...... for (i10=0;i10<=10;i10++) 阅读全文
摘要:
今天写了10个数字排列成环,相邻数字之和为素数的搜索题目,并由此总结递归改写非递归的模式经过两个题目的比较后发现,不应该提出过于细节的模型,模式化到吧递归的搜索树的形式掌握,记住模拟堆栈中记录的是搜索进行状态,终止深度是搜索树的深度,以此两点,结合题目具体条件节能完成要求带有回溯部分的题目,回溯是在循环开始时先判断搜索横向状态是否还有未进行的,如果没有的话就倒退一步,切记把数据所有标记还原初始状态,有事不止一个数据递归代码:#include<cstdio>#include<cstring>using namespace std;const bool simp[]= {0 阅读全文