当前位置:   article > 正文

腾讯笔试04-24 题目一_腾讯机考题

腾讯机考题

后台Java开发岗位,实习机试。5道题一共,一题20分,满分100分。

第一题:

牛牛有n个长度相等由数字组成的字符串,牛牛将他们一行一行排列在一起。牛牛喜欢从上到下读数,可以将n个字符串读出了一些数字字符串。牛牛想帮这些数字字符串记录下来,并将他们进行排序。希望你能帮牛牛将从小到大排序后的数字字符串输出出来,输出的这个数字字符串要去掉前导0。

输入描述:

第一行为n,表示有n个字符串。

接下来有n行,每行有一个字符串str。

1<=n<=9

1<=str.length<=10^5

输出描述:

输出为一行,表示排序后的数字,每个数字以空格隔开。

示例1

输入

  1. 3
  2. 0123
  3. 1234
  4. 2345

输出

12 1223 234 345

说明

每一列从上往下读得到的数字为012,123,234,345,去掉前导0之后的排序后结果如上。

示例2

输入

  1. 4
  2. 0000
  3. 0101
  4. 1011
  5. 0111

输出

10 11 101 111

思路:

简单的模拟题,先取出各个数字,然后使用python直接将字符串str转数字int即可(python会自动去掉前导0),比如0010直接调用,int(0010),结果就是10。

附上Python AC代码:

  1. if __name__ == "__main__":
  2. n = int(input())
  3. secLine = input()
  4. num = len(secLine)
  5. numList=[]
  6. numList.append(secLine)
  7. for k in range(1,n):
  8. numList.append(input())
  9. list=[]
  10. for i in range(num):
  11. temp=""
  12. for j in range(n):
  13. temp+=numList[j][i]
  14. list.append(temp)
  15. list=[int(num) for num in list]
  16. list.sort()
  17. res=""
  18. for k in range(len(list)):
  19. res+=str(list[k])
  20. if k!=len(list)-1:
  21. res+=" "
  22. print(res)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/570364
推荐阅读
相关标签
  

闽ICP备14008679号