外企德科-华为精英研发项目
1.勾股数元组
如果3个正整数(a,b,c)满足a^2+b^2=c^2的关系,则称(a,b,c)为勾股数(著名的勾三股四弦五),为了探索勾股数的规律,我们定义如果勾股数(a,b,c)之间两两互质(即a与b,a与c,b与c之间均互质,没有公约数),则其为勾股数元祖(例如(3,4,5)是勾股数元祖,(6,8,10)则不是勾股数元祖)。请求出给定范围[N,M]内,所有的勾股数元祖
输入描述:
起始范围N:1<=N<=10000
结束范围M:N<M<=10000
输出描述:
1.a,b,c请保证a<b<c,输出格式:a b c
2.多组勾股数元祖请按照a升序,b升序,最后c升序的方式排列输出
3.给定范围中如果找不到勾股数元祖时,输出“NA”
输出
1
20
输出
3 4 5
5 12 13
8 15 17
2.流水线
一个工厂有m条流水线,来并行完成n个独立的作业,该工厂设置了一个调度系统,在安排作业时,总是优先执行处理时间最短的作业
现流水线个数m,需要完成的作业数n,每个作业的处理时间分别为t1,t2,...,tn。请你编程计算处理完所有作业的耗时为多少?
当n>m时,首先处理时间短的m个作业进入流水线,其他的等待,当某个作业完成时,依次从剩余作业中取处理时间最短的进入处理
输入描述
第一行为2个整数(采用空格分隔),分别表示流水线个数m和作业数n;
第二行输入n个整数(采用空格分隔),表示每个作业的处理时长t1,t2,...,tn
0<m,n<100,0<t1,t2,...,tn<100
注:保证输入都是合法的
输出描述
输出处理完所有作业的总时长
示例1
输入
3 5
8 4 3 2 10
输出
13
说明
1.先安排时间为2,3,4的3个作业
2.第一条流水线先完成作业,然后调度剩余时间最短的作业8
3.第二条流水线完成作业,然后调度剩余时间最短的作业10
4.总工耗时就是第二条流水线完成作业的时间13(3+10)
3.学生方阵
学校组织活动,将学生排成一个矩形方阵。请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一条直线上,方向可以是水平的,垂直的,是对角线的或者反对角线的
注:学生个数不会超过10000
输入描述
输入的第一行为矩阵的行数和列数,接下来的n行为矩阵元素。元素间用“,”分隔
输出描述
输出一个整数,表示矩阵中最长的位置相连的学生个数
输入
3 4
FMMF
FMMF
FFFM
输出
3