网易游戏数据挖掘分析笔试题

it2026-03-13  6

一张数据表有三个字段,ID, gametime, coin,记录用户某次登录的持续时长,以及在此次登录中获得的金币总数,示例数据如下:

ID

Gametime

Coin

1

3600

10

2

2400

20

1

1800

30

3

60

20

1、用sql语句获取每个用户登录持续时间最长的一次获得的金币量。

答:假设该表名为gametable,sql语句如下

select b.ID,a.Coin from gametable a, (select ID,max(Gametime) as Maxtime from gametable group by ID) b where a.ID=b.ID and a.Gametime=b.Maxtime;

 

2、用任意语言编写一个函数,输入是一个整数,要求返回这个整数的逆序整数,例如输入1234,输出应该是4321

答:使用python代码实现整数逆序

def inverse_num(one_num): if one_num==0: return 0 else: if one_num>0: flag=True else: flag=False one_num*=-1 one_num_list=list(str(one_num)) #将整数分解为字符列表 while one_num_list[-1]=='0': one_num_list.pop() tmp=''.join(one_num_list[::-1]) #将字符列表逆序再组合为字符串 if flag: return int(tmp) #将字符串转换为整数 else: return int('-'+tmp) #同上 ##测试用例 if __name__ == '__main__': one_num_list = [1234,-1234,1200,0] for one_num in one_num_list: print(one_num,inverse_num(one_num))

运行结果:

 

3、请使用python语言完成以下编程问题,程序接受一个整数n输入,输出为一个n层的金字塔图形

 

如n=2时输出

 *

***

如n=3时输出

  *

 ***

*****

请使用最简洁的python代码完成

答:python代码如下:

def prtstar(n): for i in range(1,n+1): print(' '*(n-i) + '*'*(2*i-1))

运行结果:

 

转载于:https://www.cnblogs.com/shujuxiong/p/9291871.html

最新回复(0)