杂七杂八的题汇总

在对问题的解空间树进行搜索的方法中,一个结点有多次机会成为活结点的是?

  回溯,dfs显然可以回退到track的上一个点。分支界限法就是bfs,一个节点就遍历一次。

用俩个栈模拟实现一个队列,如果栈的容量分别是O和P(O>P),那么模拟实现的队列最大容量是多少?

  2P+1。大容量的栈A用于存储,小容量的栈B用于缓冲。1~P元素入栈A,然后弹出再P~1入栈B,如果从栈B再pop出去就满足队列的先进先出特性。先不把B中P个元素pop出去,此时A中还可以压进P+1 ~ 2P+1 个元素,等B中1~P元素pop出去,A中的2P+1~P+2可以入栈B,A中还剩P+1一个,先pop,B再pop。整体还是满足先入先出,队列最大容量为2P+1

栈底至栈顶依次存放元素A、B、C、D, 在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是

  E的位置可以随便,但DCBA的先后顺序不可能变。

两个人轮流拿一堆石子,一次至少拿一颗,最多拿三颗,谁拿走最后一颗谁获胜。两个人都很聪明,问n个石子、先手拿是否能赢。

  这题可以用动态规划做。要求直接思考的话,如果我先手能赢,拿最后轮到我取石子的时候必须剩下1~3颗,我才能一把拿完。那就要让之前对手拿的时候只剩4颗,无论怎么拿都会剩下1~3颗。那就要让再之前我选择的时候还有5~7颗,我就可以保证正好给他留下4颗。再往后推,发现是一个循环的过程,要让对手面对8颗、12颗。。。可以发现只要你现在面对的正好是4的倍数,那你永远也不可能赢。所以先手要赢,只要n mod 4 != 0 即可。

两个人拿一排石头堆,每次只能从最左边或者最右边拿走,最后谁石头多谁获胜。假设两个人都很聪明,给定一个数组piles表示石头堆,问先手是否可以赢。条件是石头堆的数量为偶数,石头的总数是奇数,换句话说最后一定有胜负之分。例如 [2, 1, 9, 5] 先手拿2,对方后手要想最大收益只能拿5,然后你就可以拿9。这种情况是可以赢的。

  先手总是可以控制自己是拿到所有的偶数堆还是所有的奇数堆。只要第一个观察好是奇数堆的石头总数多还是偶数堆堆石头总数多就行了。

有 n 盏电灯,最开始时都是关着的。现在要进行 n 轮操作:第 1 轮操作是把每一盏电灯的开关按一下(全部打开)。第 2 轮操作是把每两盏灯的开关按一下(就是按第 2,4,6... 盏灯的开关,它们被关闭)。第 3 轮操作是把每三盏灯的开关按一下(就是按第 3,6,9... 盏灯的开关,有的被关闭,比如 3,有的被打开,比如 6)...如此往复,直到第 n 轮,即只按一下第 n 盏灯的开关。现在给你输入一个正整数 n 代表电灯的个数,问你经过 n 轮操作后,这些电灯有多少盏是亮的?

  可以写程序模拟。但要求直接解。灯最开始是关的最后要亮,说明被按了奇数次。假设只有6个灯,需要进行6轮操作。第6个灯会在第1、2、3、6轮被按,因为6 = 1*6 =2*3。但如果是16的话,16 = 1*16=2*8=4*4,有重复的因子,所以只会被按5次。所以有多少盏灯会被按奇数次呢,直接把n开平方以后转成整型即可。

  

用十进制计算30!(30的阶乘),将结果转换成3进制进行表示的话,该进制下的结果末尾会有___个0。

  如果是十进制的话最后有几个0就取决于阶乘的乘子中能分解出几个10。同理这题看能分解出多少3就好了。3、6、9、12、15、18、21、24、27、30能分解出14个3。

小赵和小钱二人分别从寝室和图书馆同时出发,相向而行。过了一段时间后二人在中途相遇,小赵继续向图书馆前进,此时:若小钱继续向寝室前进,则当小赵到达图书馆时,小钱离寝室还有600米;若小钱立即折返向图书馆前进,则当小赵到达图书馆是,小钱离图书馆还有150米。那么图书馆与寝室间的距离是____。

  设相遇后到小赵到达时,小钱又走了x米,则v1/v2 = (150+x)/x = (600+x)/(150+x),x=75,d = 600 + 2x +150 = 900

某开发团队有6位开发同学,需参加5个项目, 每个项目都有人做 ,每位同学需要恰好参加1个项目,那么总共有____ 种不同的分配方案 

  有一个项目需要两个人做,剩下4个全排列。所以是 C51 C62 A44

有8只球队,采用抽签的方式随机配对,组成4场比赛。假设其中有4只强队,那么出现强强对话 (任意两只强队相遇)的概率是____。

  全部的对决方式有C82 C62 C42 ,强强不对决的可能(四场全部强对弱)A44 A4 所以强强对话的概率是1-A44 A4 / C82 C62 C42  = 27/35

原文地址:https://www.cnblogs.com/chaojunwang-ml/p/11408237.html