通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"NOIP真题" 试卷中 NOIP第十八届全国青少年信息学奥林匹克联赛初赛试题[2012提高组] 中有题目如下:
第1题
#include <iostream> #include <string> using namespace std; int lefts[20], rights[20], father[20]; string s1, s2, s3; int n, ans; void calc(int x, int dep){ ans = ans + dep*(s1[x] - 'A' + 1); if (lefts[x] >= 0) calc(lefts[x], dep+1); if (rights[x] >= 0) calc(rights[x], dep+1); } void check(int x){ if (lefts[x] >= 0) check(lefts[x]); s3 = s3 + s1[x]; if (rights[x] >= 0) check(rights[x]); } void dfs(int x, int th){ if (th == n){ s3 = ""; check(0); if (s3 == s2){ ans = 0; calc(0, 1); cout<<ans<<endl; } return; } if (lefts[x] == -1 && rights[x] == -1){ lefts[x] = th; father[th] = x; dfs(th, th+1); father[th] = -1; lefts[x] = -1; } if (rights[x] == -1){ rights[x] = th; father[th] = x; dfs(th, th+1); father[th] = -1; rights[x] = -1; } if (father[x] >= 0)dfs(father[x], th); } int main(){ cin>>s1; cin>>s2; n = s1.size(); memset(lefts, -1, sizeof(lefts)); memset(rights, -1, sizeof(rights)); memset(father, -1, sizeof(father)); dfs(0, 1); }
输入:
ABCDEF
BCAEDF
输出:____
所属试卷:NOIP第十八届全国青少年信息学奥林匹克联赛初赛试题[2012提高组]
使用 turtle 库的 turtle.fd函数和
以下代码的输出结果是( )。
在深度为7的满二叉树中,度为2的结点个数为( )。
下列叙述中正确的是( )。
若有C语言表达式 2+3*4+7/3,以下选项中叙述正
以下选项中,合法的一组C语言数值常量是。
有以下程序:程序的运行结果是。
#编写程序,计算所有三位数水仙花数的和并输出求和结果。
字典对象的________方法返回字典的“值”列表。
字典:d={"张三":88,"李四":90,"王五":
编写程序,其功能是:用for循环语句求1到n之间所有偶
已知列表x=[1,2],执行语句y=x[:]后,表达式
表达式int('123',16)的值为________
C语言中下面哪个不是循环语句?( )
有下面程序段:则( )。
对于给定的文件file,统计其中所有包含字符串”WHU
如果两个实体之间具有M:N联系,则将它们转换为关系模型
MySQL创建存储过程时 ____表示输出类型参数
在DELETE触发程序中,可使用( )关键字引用被删除
UNIQUE惟一索引的作用是( )
有 n(n≥3)位哲学家围坐在一张圆桌边,每位哲学家交
若下图为一段差分曼彻斯特编码信号波形,则其编码的二进制
在do-while循环中,根据情况可以省略while。
预处理命令行都必须以_____号开始。
输入 :62 6 3 4 5 1输出 :____
(最大子矩阵和)给出 m行n 列的整数矩阵,求最大的子
在一个无向图中,如果任意两点之间都存在路径相连,则称其
从顶点A0出发,对有向图( )进行广度优先搜索(BFS
(选排列)下面程序的功能是利用递归方法生成从 1 到
将 2006 个人分成若干不相交的子集,每个子集至少有
更多选择题
更多填空题
全国计算机等级考试《二级Java语言程序设计》真题(五)
全国计算机等级考试《二级Java语言程序设计》真题(四)
全国计算机等级考试《二级Java语言程序设计》真题(三)
全国计算机等级考试《二级Java语言程序设计》真题(二)
全国计算机等级考试《二级Java语言程序设计》真题(一)
计算机二级Python语言程序设计模拟试卷
Python第三方库