华为2017笔试试题
拥有通过HCNA认证的工程师,意味着企业有能力搭建基本的中小型网络,并将基本的语音、无线、云、安全和存储集成到网络之中,满足各种应用对网络的使用需求。下面是关于华为2017笔试试题,欢迎大家参考!
题1:
# -*- coding: utf-8 -*-
"""
Created on Fri Mar 24 23:26:33 2017
@author: acelit
"""
#问题描述:将两个正整数按照从高位到低位取反后相加
#输入:两个[1,70000]内的整数
#输出:;两个整数取反和
def reverseAdd(a,b):
if a < 1 or a > 70000 or b < 1 or b > 70000:
return -1
else:
astr = str(a)
bstr = str(b)
arev = brev = 0
indexa = indexb = 0
for i in astr:
arev += int(i)*10**indexa
indexa += 1
for j in bstr:
brev += int(j)*10**indexb
indexb += 1
return arev + brev
#测试
num1 = 6768
num2 = 9002
revSum = reverseAdd(num1, num2)
print revSum
题2:
# -*- coding: utf-8 -*-
"""
Created on Fri Mar 24 20:19:51 2017
@author: acelit
"""
#问题描述:按照6种方式旋转骰子,输出骰子最后的标记
#旋转骰子:L-向左 R-向右 F-向前 B-向后 A-逆时针旋转90度 C-顺时针旋转90度
#骰子标记:初始标记123456,分别为左右前后上下
#输入:骰子旋转序列
#输出:骰子对应标记,若输入字符串不合法则返回-1
def splitString(string):
num = [1,2,3,4,5,6]
for i in string:
if i == 'L':
num = [num[4],num[5],num[2],num[3],num[1],num[0]]
elif i == 'R':
num = [num[5],num[4],num[2],num[3],num[0],num[1]]
elif i == 'F':
num = [num[0],num[1],num[4],num[5],num[3],num[2]]
elif i == 'B':
num = [num[0],num[1],num[5],num[4],num[2],num[3]]
elif i == 'A':
num = [num[3],num[2],num[0],num[1],num[4],num[5]]
elif i == 'C':
num = [num[2],num[3],num[1],num[0],num[4],num[5]]
else:
return -1
return str(num[0])+str(num[1])+str(num[2])+str(num[3])+str(num[4])+str(num[5])
#测试
test = 'RA'
result = splitString(test)
print result
【华为笔试试题】相关文章:
2017年华为笔试题及答案03-09
2017年华为认证笔试试题03-29
华为上机试题汇总01-23
华为认证考试试题及答案03-05
华为测试面试题汇总05-21
2017华为JAVA考试试题03-09
硬件工程师笔试题11-09
IBM公司面试笔试题08-28
思科认证考试试题(笔试)03-30