2011NOKIA笔试题目

来源:互联网 发布:江西省委党校 数据库 编辑:程序博客网 时间:2024/06/06 17:19

今天去NOKIA机试,纯粹打酱油,没什么准备,题目貌似不难,但时间和空间效率都要求很高,现场调试成功还是要相当的水准的。

以后要好好练练北大ACM上的题目了。以下题目自然输入项范围都很大,时间和空间效率要求最优。题目细节记不太清了,大致翻译而已。全部只能用C语言完成。

1. 输入: char *S

     字符串S是a-z的任意字符组成的乱序字符串,没有任何规律。

     要求判断经过顺序调整,字符串S可否变成回文数。

输出:

可变为回文数输出为1,不能变成输出为0.

例如:

wjockwajiaock可变为回文数

wojackikcajow  ,返回1.

abcbba,不能变为回文数,返回0.

2.  判断十进制整数N,在m(2<=m<=36)进制下,经进制变换后要求用big endian顺序输出结果。

   例如:

   当m=16,N=31,输出应为1f。

   当m=26,N=  70 ,输出应为2i。

   当m=21,N=62,输出应为2k。

   

3.已知数组A[N],当然数组很大,数组元素值为整数,有正有负,求使连续下标区间内所有元素和最大的值。(附加项:记录区间下标)

例如:A[0]=-1,A[1]=8,A[2]=3,A[3]=-6

A(0,0)=-1

A(0,1)=7

A(0,2)=10

A(0,3)=4

A(1,1)=8

A(1,2)=11

A(1,3)=5

A(2,3)=-3

A(3,3)=-6

输出值为A(1,2),11。

4.求一个数组A[N]内,输出所有不满足当下标i<j时,而数组元素值A[i]>A[j]的所有元素值和下标对。(貌似是这个意思,有少许改动)

例如:

A[0]=5,A[1]=3,A[2]=4,A[3]=2,A[4]=3

输出

A[1]和A[2],A[1]和A[4],A[3]和A[4]。


原创粉丝点击