近期论坛无法登录的解决方案


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 2272|回复: 7
收起左侧

新鲜的Twitter OA实习

[复制链接] |试试Instant~ |关注本帖
如果我是金牛座 发表于 2016-11-13 13:28:55 | 显示全部楼层 |阅读模式

2017(7-9月) 码农类 硕士 实习@Twitter - 网上海投 - 在线笔试 |Otherfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
实习OA,但我感觉实习和Full time的OA其实差不多,之前也是做了好多地里的Full time OA,抽中了原题。但现在找不到那些帖子了。。。
楼主抽到的是两题版本,时间限制是7天。。。
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
第一题是Timeseries Data Aggregation..鏈枃鍘熷垱鑷1point3acres璁哄潧
从一个文件中中提取想要的数据。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
文件的第一行是time period, . visit 1point3acres.com for more.
第二行是空行
第三行开始有数据:具体时间,项目,次数

比如:
2015-08, 2016-04. visit 1point3acres.com for more.
. From 1point 3acres bbs
2015-08-15, clicks, 635
2016-03-24, app_installs, 683
2015-04-05, favorites, 763
2016-01-22, favorites, 788.1point3acres缃
2015-12-26, clicks, 525
2016-06-03, retweets, 101
2015-12-02, app_installs, 982-google 1point3acres
2016-09-17, app_installs, 770
2015-11-07, impressions, 245
2016-10-16, impressions, 567


Output是找出time period中的所有数据,不要求具体日期,如果时间相同,项目和次数也要整合,上面例子的output就应该是. 1point 3acres 璁哄潧
2016-03, app_installs, 683
2016-01, favorites, 788
2015-12, app_installs, 982, clicks, 525
2015-11, impressions, 245
2015-08, clicks, 635

需要注意排序和整合,当然这只是第一个test case,后面的test case有点tricky的地方,就是如果时间和项目都相同的话,那么output的次数应该是它们的合。.鐣欏璁哄潧-涓浜-涓夊垎鍦
比如input:
2015-08, 2016-04
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
2015-08-15, clicks, 635
2015-08-17, clicks, 177


那么output就应该是:
2015-08-15, clicks, 812

这题不难,就是有点麻烦。。。

第二题就是Tweet Recommendation
做了第一道题再做第二题,简直秒,题目有点长,但其实很简单,如果遇到的话用hash table就好啦~

攒个人品准备下周的电面,顺便求大米啊~~~

评分

1

查看全部评分

 楼主| 如果我是金牛座 发表于 2016-11-13 13:30:42 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
有点小错误~比如input: 2015-08, 2016-04  2015-08-15, clicks, 635 2015-08-17, clicks, 177   那么output就应该是: 2015-08-15, clicks, 812
回复 支持 反对

使用道具 举报

 楼主| 如果我是金牛座 发表于 2016-11-13 13:34:03 | 显示全部楼层
关注一亩三分地微博:
Warald
额。。第一次发帖,有点不知道怎么发,上文中比如. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
input:
2015-08, 2016-04  

2015-08-15, clicks, 635 . visit 1point3acres.com for more.
2015-08-17, clicks, 177
   
那么output就应该是:
2015-08, clicks, 812
回复 支持 反对

使用道具 举报

阿童木 发表于 2016-11-15 01:56:43 | 显示全部楼层
楼主可以发一下代码吗,谢谢!
回复 支持 反对

使用道具 举报

 楼主| 如果我是金牛座 发表于 2016-11-15 04:12:58 | 显示全部楼层
我用python写的,第一题.鏈枃鍘熷垱鑷1point3acres璁哄潧

  1. import sys-google 1point3acres
  2. import collections
  3. . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  4. class CMP(object):. more info on 1point3acres.com
  5.     def __init__(self, date, catagory, number):
  6.         self.date = date
  7.         self.catagory = catagory
  8.         self.number = int(number)

  9.     def __cmp__(self, other):
  10.         return (cmp(self.catagory, other.catagory))
  11. . 鍥磋鎴戜滑@1point 3 acres
  12. line = sys.stdin.readline()
  13. line = line.split(',')
  14. range1 = line[0]
  15. range1 = range1[:4] + range1[5:]
  16. range1 = int(range1)
  17. range2 = line[1].strip()
  18. range2 = range2[:4] + range2[5:]
  19. range2 = int(range2). 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

  20. output = []
  21. c = 0
  22. line = sys.stdin.readline(). more info on 1point3acres.com
  23. line = sys.stdin.readline()
  24. while line:
  25.     new_line = line.split(',')

  26.     obj = CMP(new_line[0], new_line[1], new_line[2][:-1])
  27.     org_catagory = obj.catagory
  28.     org_number = obj.number
  29.     org_date = obj.date[:-3]
  30.     new_date = org_date[:4] + org_date[5:]
  31.     new_date = int(new_date)
  32.     if new_date >= range1 and new_date < range2:
  33.         output.append([org_date]). From 1point 3acres bbs
  34.         output[c].append(obj)
  35.         c += 1
  36. . From 1point 3acres bbs
  37.     line = sys.stdin.readline()

  38. d = collections.defaultdict(list). more info on 1point3acres.com
  39. for k, v in output:
  40.     if k in d:
  41.         flag = 0
  42.         for a in d[k]:
  43.             if a.catagory == v.catagory:. 鍥磋鎴戜滑@1point 3 acres
  44.                 a.number += v.number
  45.                 flag = 1
  46.         if flag == 0:
  47.             d[k].append(v)
  48.     else:. From 1point 3acres bbs
  49.         d[k].append(v)

  50. new_d = sorted(d.items())
  51. new_d = new_d[::-1]
  52. . 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  53. for k, v in new_d:
  54.     if type(v) is list:. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  55.         v.sort(). 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  56.     else:
  57.         continue
  58. . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  59. for k, v in new_d:
  60.     sys.stdout.write(k). more info on 1point3acres.com
  61.     for obj in v:.1point3acres缃
  62.         sys.stdout.write("," + obj.catagory + ", " + str(obj.number)). From 1point 3acres bbs
  63.     print ""
复制代码
回复 支持 反对

使用道具 举报

somesaywithme 发表于 2016-11-22 10:39:07 | 显示全部楼层
我做了好久了,到现在几个礼拜了都没收到后续,问什么会这样呢?
回复 支持 反对

使用道具 举报

zhihaosun 发表于 2016-11-22 10:46:33 | 显示全部楼层
第一道题用TreeMap挺省事的吧
回复 支持 反对

使用道具 举报

 楼主| 如果我是金牛座 发表于 2016-11-22 11:02:17 | 显示全部楼层
zhihaosun 发表于 2016-11-22 10:46. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
第一道题用TreeMap挺省事的吧

Java的话应该ok,python我不知道怎么用………
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-6-27 05:14

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表