網易遊戲研發工程師2018春招線上筆試(不全 未測)
記錄一下自己的(zz)程式碼,題目只取其意。
一、畫等腰三角形
題目:給定數字N,輸出用‘*’表示邊,‘.’表示空白,的一個高為N底為2N-1的等腰三角形
不要輸出空格
如:N=5:
. . . . *
. . . *. *
. . *. . . *
. *. . . . . *
*********
import sys
for line in sys.stdin:
a = line.split()
N = int(a[0])
print('.'*(N-1)+'*')
for i in range(1,N-1):
print('.'*(N-1-i)+'*'+'.'*(2*i-1)+'*')
print('*'*(2*N-1))
二、數字特殊排序
題目:
輸入前四個分別表示後面四個值個數的八個數字,尋找最好的一種排列所有這四種值的方式, 使得過程中當前數字和的個位數與新加入的數的乘積的總和最大,輸出最大乘積和
輸入:1 1 1 1 11 12 13 14
輸出:235
import sys
for line in sys.stdin:
a = input().split()
nums = [int(a[i]) for i in range(4)]
mass = [int(a[i]) for i in range(4,8)]
used = [0]*4
maxi=0
def findmax(nums,mass,maxi):
if sum(nums)==0:
maxi = 0
else:
used = nums.copy()
for i in range(4):
if used[i]>0:
used[i]-=1
new = mass[i]*(sum(mass[j]*used[j] for j in range(4))%10)
return max(maxi,findmax(used,mass,maxi)+new)
return maxi
print(findmax(nums,mass,maxi))
三、(沒做,略過)
四、字串新運算
題目:
定義字串運算;字串僅限於A-Za-z0-9的所有組合; 按照優先順序排列: ()括號 ~將字串順序顛倒;-改變字串大小寫 * 如 AAA*BB = ABBABBA;/ 如ABCABCAE/AB = CCE + 將兩個字串串一起;- 前者減後者(完全),如ABCDEF-DE = ABCF
如:ABC*~(XYZ+a)/az = AZYXBZYXC
import sys
for line in sys.stdin:
a = line.split()
form = a[0]
res = []
def isstring(each):
if 'z' >= each >= 'a' or '0' <= each <= '9' or 'A' <= each <= 'Z':
return True
else:
return False
for each in form:
if isstring(each):
if len(res) > 0 and isinstance(res[-1], str) and isstring(res[-1]):
res[-1] += each
else:
res.append(each)
elif each == '+':
res.append(-1)
elif each == '-':
res.append(1)
elif each == '*':
res.append(-2)
elif each == '/':
res.append(2)
elif each == '~':
res.append(3)
elif each == '(':
res.append(4)
elif each == ')':
res.append(0)
for k in range(len(res)):
if res[k] == 1:
if k == 0 or not isstring(res[k - 1]):
res[k] = -3
def findmax(res):
maxi = 0
pos = 0
for m in range(len(res)):
if isinstance(res[m], int) and abs(res[m]) > maxi:
pos = m
maxi = res[m]
return pos
def findP(res):
maxi = 0
for p in range(len(res)):
if res[p] == 0:
maxi = p
return maxi
def calculate(res):
if len(res) == 0:
return ""
if len(res) == 1:
return res[0]
pp = findmax(res)
if res[pp] == 4:
end = findP(res[pp:]) + pp
return calculate(res[:pp] + [calculate(res[pp + 1:end])] + res[end + 1:])
elif abs(res[pp]) == 3:
if isstring(res[pp + 1]):
if res[pp] == 3:
res[pp + 1] = res[pp + 1][::-1]
else:
for c in range(len(res[pp + 1])):
if 'A' <= res[pp + 1][c] <= 'Z':
res[pp + 1][c].lower()
elif 'a' <= res[pp + 1][c] <= 'z':
res[pp + 1][c].upper()
res.pop(pp)
return calculate(res)
else:
for c in range(len(res[pp + 2])):
if 'A' <= res[pp + 2][c] <= 'Z':
res[pp + 2][c].lower()
elif 'a' <= res[pp + 2][c] <= 'z':
res[pp + 2][c].upper()
res[pp + 1] = res[pp + 1][::-1]
res.pop(pp)
res.pop(pp)
return calculate(res)
elif res[pp] == 2:
t = ""
for ea in res[pp - 1]:
if ea not in res[pp + 1]:
t += ea
res[pp] = t
res.pop(pp - 1)
res.pop(pp)
return calculate(res)
elif res[pp] == -2:
t = ""
for ea in res[pp - 1][:-1]:
t += ea + res[pp + 1]
res[pp - 1] = t + res[pp - 1][-1]
res.pop(pp)
res.pop(pp)
return calculate(res)
elif res[pp] == 1:
l = len(res[pp + 1])
t = ""
q = 0
while q <= len(res[pp - 1]) - l:
if res[pp - 1][q:q + l] == res[pp + 1]:
q += l
t += res[pp - 1][q:]
break
else:
t += res[pp - 1][q]
q += 1
res[pp - 1] = t
res.pop(pp)
res.pop(pp)
return calculate(res)
elif res[pp] == -1:
res[pp - 1] += res[pp + 1]
res.pop(pp)
res.pop(pp)
return calculate(res)
print(calculate(res))
相關文章
- 筆試題目——研發工程師筆試題筆試工程師
- (網易2018校招筆試)[程式設計題] 魔法幣筆試程式設計
- (網易2018校招筆試)[程式設計題] 相反數筆試程式設計
- (網易2018校招筆試)[程式設計題] 字串碎片筆試程式設計字串
- 華為2019春招筆試題筆試
- 京東2018校招Web前端工程師筆試有感Web前端工程師筆試
- 網易2007Hust遊戲開發工程師筆試遊戲開發工程師筆試
- 一次網易遊戲測試工程師(外包)的面試遊戲工程師面試
- 從一道春招筆試題說起 [上]筆試
- (網易2018校招筆試)[程式設計題] 遊歷魔法王國筆試程式設計
- 我的2018春招實習+秋招總結【前端開發】前端
- [位元組跳動][社招 / 校招] 位元組急招測試 / 測試開發工程師,歡迎同學來投遞工程師
- 網易公共技術Java研發工程師面經(offer)Java工程師
- 網易遊戲是如何做測試的?遊戲
- 【牛客】美團2024年春招第一場筆試【技術】筆試
- 高階遊戲開發工程師測試題遊戲開發工程師
- 2018 大三 PHP 春招實習路PHP
- 2018年前端社招筆試題分享前端筆試
- [原創]上海好買基金招測試開發/測試工程師/配置管理組長/配置管理工程師工程師
- 【社招】【小米】golang服務端(高階)研發工程師Golang服務端工程師
- 位元組跳動前端研發面經-2020春招技術面前端
- 100道測試工程師筆試題工程師筆試
- 2018掘金春招求職徵文活動獎品發放 | 掘金技術徵文求職
- 系統測試-從研發到測試過程
- 網易互娛 遊戲研發 暑期實習面試面經遊戲面試
- 從面試連跪到收割offer,回顧我的春招面試歷程(研發崗位)面試
- 【成都】Android、golang、高階研發、測試工程師招聘瞭解下哇AndroidGolang工程師
- 嘗試做“無線研發工程師”有感工程師
- [蔚來汽車]蔚來汽車社招內推,智慧車載OS急招嵌入式軟體開發工程師和測試開發工程師!!!工程師
- 網易內推筆試筆試
- 2018網易筆試程式設計題----重排數列筆試程式設計
- 2018春招PHP面試總結 | 掘金技術徵文PHP面試
- 白山雲科技校招:系統研發、機器學習、資料探勘工程師機器學習工程師
- 我的春招求職經驗分享(已拿阿里京東網易等 5 個 offer)求職阿里
- 研發類C++筆試題目C++筆試
- [武漢] 集度招軟體測試開發
- 有趣的前端程式設計題:攜程 2018 春招前端程式設計
- 網易2020校招資料分析方向提前批筆試題解析筆試