小米软开秋招笔试——算法真题

时间:2024.10

1、小明在研究一个有運的款组翻转问题,其中为了考虑均衡,他会同时翻转相邻两个数,有一个长度为N数细a[],并可以进行任意次:选择相邻两个数,翻转这两个数的符号,即将a[i]和a[i+1]的符号都翻转,符号翻转的意思是正数变负数,负数变正数
在程序中即让nums=-num
小明的任务是找到经过任意次数(可能为 0)后,能获得的量最大数组和,同一个数可被反复选择
输入描述:第一行一个整数N,数组长度,第二行N个整数

2、小明正在欣赏他的一串宝石项连,这个项链设有封口,初始时从左往右宝石分别编号 1,2,3,...,n,经一段时间,小明觉得需要将某宝石取下,放到某颗宝石前面或后面,小明在正式进行调整前,请你模拟下他的若干次调整,弄清楚经过若干次调整后宝石项链的样子
输入描述:第一行n,q,表示宝石数量和操作次数,第二行a1, b1, op1, a2, b2, op2, ..., aq, bq, opq,对第i次操作,表示将编号为ai的宝石取下,放到编号bi的宝石旁边,opi=0时放到其前,否则放到其后
输出描述:n个整数,表示调整后,宝石编号
全部评论

相关推荐

时间:2024.101、小A正在玩游戏,在游戏中一共有n个不同星球,星球间共有m条双向航道,小A的任务是摧毀这些星球。若有多个星球间两两可达,则我们称它们展于同一个联盟。特别的,若一个星球与其他星球都没有航道,则也称这个星球为一个联盟。小A将按照星球的编号从小到大依次推毀各个星球,当一个星球被摧毁后,与之相连的航道也将相继摧毁,现在小A想知道在每个星球被摧毁时,还剩下多少个联盟。不同星球间可能有多条航道,但每条航道连接的两个星球必然不同。上述题意可以被简化为,给定n个点,m条边的无向图,按照编号大小依次删除各个节点,请问在每个节点被删除时,还剩下多少个连通块。保证给定图无自环,但可能有重边。输入描述:第一行两个正整数n,m,表示星球数与航道数。接下来m行,每行2个正整数u, v表示两星球有一条航道输出描述:输出一行n个正整数,表示答案示例:输入:5 61 22 33 14 55 12 4输出:1 2 1 1 02、小明有一个含有n个数的序列a1,a2, ...,an,对这个序列进行Q次询问,每次询问的形式为l r m,表示他要找到一个非负整数k,使得0<=k<=m且al异或al+1异或...异或ar异或k最大,对于每次询问,小明想要知道al异或al+1异或...异或ar异或k最大値。输入描述:第一行输入两个正整数n,Q,分别表示序列中数的个数以及询向次数第二行输入n个非负整数a1,a2, ...,an第三行输入Q个正整数l1,l2, ...,lQ,表示每次询问对应的左端点第四行输入Q个正整数r1,r2, ...,rQ,表示每次询问对应的右端点第五行输入Q个非负整数m1,m2, ...,mQ,表示每次询问对应的k能选择的最大值输出描述:为了避免较大的输出量,你需要将所有询问得到的答案全部异或起来再输出,也就是仅输出一个非负整数示例:输入:5 62 0 3 6 52 1 34 3 53 1 0输出:6
查看2道真题和解析 投递滴滴等公司6个岗位
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务