- 问题:反相位
- 技术评估
- 结果
我于2019年8月2日收到Infosys的邮件, 通知我入围InfyTQ升级测试, 并获得邀请链接以及提及的日期和时间以进行技术评估。
技术评估 测试于2019年8月7日进行。共有3个编码问题。我解决了1个问题。我已经解决的问题如下:
问题:反相位 你将得到一个大小为n的数组。数组中的每个元素都是0或1。你必须执行一个操作。在一个操作中, 你需要选择一个子阵列并将该子阵列中的所有位取反。要选择的子数组的最小大小为1, 最大大小为n。
打印通过执行上述操作可获得的最大1s数。
[注:反转意味着将0更改为1, 将1更改为0]
测试用例:
Input:
6
1 0 0 1 0 1
Output:
5
上述问题的解决方案如下:
n = int ( input ())# Number of elements in the arrayarr = list ( map ( int , input ().split()))# Array containing 0s and 1sones_count = []# Use two for loops to creat subarrays
for i in range (n):
for j in range (i + 1 , n + 1 ):# arr[i:j] is a subarray
# The main logic to calculate count of 1s
ones_count.append(arr.count( 1 ) + arr[i:j].count( 0 ) - arr[i:j].count( 1 ))# finally, maximum of ones_count will be the required answer
print ( max (ones_count))
面试
我于2019年8月13日收到Infosys的一封邮件, 通知我被选为SES(系统工程师专家)PPI(岗前面试)。 8月19日, 我又收到了来自Infosys的一封有关PPI日期和时间的邮件。它定于8月26日, 报告时间为上午9:00。
在面试那天, 即8月26日, 我进入面试室, 有10多个不同的面试小组, 每个小组只有一名面试官, 即一次只有一名面试官在采访一名面试官。我被问到的问题如下:
- 自我介绍。
- 什么是数据科学?
- 什么是机器学习?
- 什么是机器学习算法?
- 你来到这里的考试过程是怎样的?
- Python和C ++有什么区别?
结果 结果在晚上的同一天宣布。下午6:00左右, 我被召集, 招聘团队负责人说:
"恭喜你, Manish Kumar Chaudhary, 你将获得Infosys的系统工程师专员的职位"。
推荐阅读
- 常见数据结构的实时应用详细介绍
- 算法设计(反转链表代码实现)
- 算法设计(通配符模式匹配算法原理和实现)
- 计算一个给定字符串的子字符串,该字符串的变位是回文
- 如何在不使用临时变量的情况下交换两个数字()
- C语言入门快速介绍
- 算法题(两个大小不同的已排序数组的中位数)
- 黑盒测试与白盒测试之间有什么区别()
- 算法设计(数字的最大和最小数字)