2019南京大学计算机本科生开放日机试

2019年南京大学计算机本科生开放日机试对外地学生难度较高,共3题,涉及动态规划、深广度遍历等。每题10个用例,每个用例10分,机试成绩对最终总分影响显著。面试部分,三位老师评分,主要涵盖英文问题、算法基础和项目介绍。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明

南大的机试分两场,南京本地一场、外地一场。2019年的外地同学的机试难度略高于本地同学机试难度。机试共3题,按照套路一般是动态规划、深广度遍历、树这些题目,大概是leetcode中等难度题,模板题比较多。(南大年年有DP!!!)dp解法想不到的话,可以靠dfs骗分。

题目(2小时3题)

这次说的150以上就有可能、250以上就很稳拿优秀营员

题目一:
    给你一个不超过100位的数n,和一个不超过100的数字k,要求从数n中去掉k个数字,然后使得去掉k个数之后,n最小。
    
    题解链接:https://blog.csdn.net/C20190413/article/details/77368590
题目二:
    有B个男孩,G个女孩,要求所有男孩女孩排成一队,连续的男孩个数不可以超过K个,问一共有多少种排法。(结果需要mod 10007)
    
    这个就是万年不变的必有dp。
    思路一:dfs,会超时,但是可以骗分。(我骗了70,hh)
    思路二:dp
    本题可以看作(G+1)个抽屉,每个抽屉最多放K个物品,一共有B个物品,问不同的放法。这样,本题很容易想到DP解法。

    dp[g][b]+=dp[g-1][b-i], 
    0<=i<min(b,k),其中dp存储插入位置g时已使用b个男孩的可能数。dp[0][0]=1,输出dp[G+1][B]
题目三:
    给出一个二叉树的前序遍历序列和后序遍历序列的字符串,问通过这两个序列可以构造多少中不同的二叉树,
    因为树的样子不一样,遍历的序列是可能一样的。比如前序序列:abc,后序序列cba,就有4种不同的树。
    简单来说就是如果一棵树他只有一边的子树,那就是子树可能为左子树也可能为右子树。×2就好。
    
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值