[职场感言] 工作一年了,聊聊三件事

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 3403|回复: 8
收起左侧

Twitter Online Assessment (HackerRank Challenge)

[复制链接] |试试Instant~ |关注本帖
pro 发表于 2014-11-5 13:21:44 | 显示全部楼层 |阅读模式

2014(10-12月) 码农类General 硕士 全职@Twitter - 网上海投 - 在线笔试  | Pass |

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

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

x
1. Two Operations (Programming)
You are given only two operations, ADD_1 and MULTIPLY_2. You start from 0 and using the two operations reach a number N. Find the least number of operations needed to do this.. 牛人云集,一亩三分地
Input Format: . 一亩-三分-地,独家发布
Given T, T lines follow. Each line contains
N - Number to be formed
Output Format
Print the minimum number of operations needed in each line corresponding to each test case.. visit 1point3acres for more.
Constraints
T <= 10000
N <= 1016
Sample Input
2
5
3
Sample Output. 1point 3acres 论坛
4
3
Explanation
Case1: To reach 5 from 0. We do ADD1 then Multiply2 two times and then add 1 again , total 4 steps
Case2: To reach 3 from 0. We can either do Add 1 3 times or Add 1 , multiply 2 and again add 1


2. Rational Sum (Programming)
In mathematics, a rational number is any number that can be expressed in the form of a fraction p/q , where p & q are two integers, and the denominator q is not equal to zero. Hence, all integers are rational numbers  where denominator, in the most reduced form, is equal to 1.
You are given a list of N rational number, {a1/b1, a2/b2, ..., aN/bN}. Print the sum ( = a1/b1 + a2/b2 + ... + aN/bN = num/den) in the most reduced form.
Input
The first line of input contains an integer, N, the number of rational numbers.  N lines follow. ithline contains two space separated integers, ai bi, where aiis the numerator and bi is the denominator for the ith rational number.
Output. visit 1point3acres for more.
You have to print two space separated integers, num den, where num and den are numerator and denominator of the sum respectively.
Constraints
  • 1 <= N <= 15
  • 1 <= ai <= 10
  • 1 <= bi <= 10. 围观我们@1point 3 acres
Notes
  • Make sure the sum displayed as output is in the most reduced form.
  • If sum is an integer, you have to print 1 as denominator.
Sample Input
4
4 2
2 4 来源一亩.三分地论坛.
2 4
2 3
. From 1point 3acres bbsSample Output
11 3. 牛人云集,一亩三分地

Explanation
Sum is 4/2 + 2/4 + 2/4 + 2/3 = (24 + 6 + 6 + 8)/12 = 44/12 = 11/3. So you have to print "11 3", which is the most reduced form.

--------------------

有一点比较奇怪的就是,听说Twitter应该是做完笔试再通知phone interview的,但是我笔试都还没做phone interview的邮件就来了_(:з」∠)_

(ps. HackerRank就是好用!)
(ps. 发帖的时候选公司那里居然没有Twitter_(:з」∠)_)
NdrZmansN 发表于 2015-1-23 06:36:54 | 显示全部楼层
谢谢分享.
楼主方便分享一下第二题的解法么?. from: 1point3acres
谢谢,
回复 支持 反对

使用道具 举报

haiken 发表于 2015-1-24 02:00:44 | 显示全部楼层
NdrZmansN 发表于 2015-1-23 06:36
. 留学申请论坛-一亩三分地谢谢分享..本文原创自1point3acres论坛
楼主方便分享一下第二题的解法么?
谢谢,

主要是要写个最大公约数的func, 我想.

写个了C++的版本, 不是很简洁, 最大公约数也可以用C里自带的__gcd()
. 1point3acres
using Pair = pair<int, int>;. 牛人云集,一亩三分地

int _gcd(int a, int b){
        return b==0 ? a : _gcd(b, a%b);
}
-google 1point3acres
Pair rationalSum(vector<Pair> &R){
        int gcd = _gcd(R[0].first, R[0].second);
        Pair res = {Pair(R[0].first/gcd, R[0].second/gcd)};.1point3acres网
        for(int i=1; i<R.size(); ++i){
                gcd = _gcd(R.first, R.second);
                R.first = R.first/gcd;
. Waral 博客有更多文章,                R.second = R.second/gcd;
                int first = res.first * R.second + R.first  * res.second;
                int second = R.second * res.second;. 1point3acres
                gcd = _gcd(first, second);
                res.first = first/gcd;
                res.second = second/gcd;
        }       
        return res;. From 1point 3acres bbs
}
回复 支持 反对

使用道具 举报

douya 发表于 2015-2-2 04:46:02 | 显示全部楼层
谢谢分享,这个是online coding challenge?
回复 支持 反对

使用道具 举报

tyr034 发表于 2015-3-1 13:31:04 | 显示全部楼层
def rationalSum(lst):
    return functools.reduce(add,lst)

#greatest common divider
def gcd(a,b):
    while a :
        a,b = b%a,a. From 1point 3acres bbs
    return b
. from: 1point3acres
#lowest common multiplier
def lcm(a,b):
    return a*b//gcd(a,b)
      
def add(a,b):. more info on 1point3acres
   
    de = lcm(a[1],b[1])
    nu = a[0]*de//a[1] + b[0]*de//b[1] 来源一亩.三分地论坛.
    return(nu,de)
回复 支持 反对

使用道具 举报

manjusaka077 发表于 2015-3-11 04:22:21 | 显示全部楼层
第二题
Constraints
1 <= N <= 15
1 <= ai <= 10
1 <= bi <= 10.
竟然这么小?那可不可以直接把10以内的质数列出来放一个数组里,然后在分母里面找都出现过哪几个质数乘一下就是最终的分母了……
回复 支持 反对

使用道具 举报

nibuxing 发表于 2015-3-13 21:37:08 | 显示全部楼层
请问公司在Hackerrank上的test是不是都是考算法啊
Mobile Apps Category (English)728x90
回复 支持 反对

使用道具 举报

liuliuion1 发表于 2015-3-29 03:31:44 | 显示全部楼层
请问第一题该怎么做呢?
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

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

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

custom counter

GMT+8, 2018-5-24 08:46

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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