《数据科学面试40+真题讲解》,K神本年度最后一次开课


一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 1920|回复: 1
收起左侧

epic oa题additive number

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

2014(10-12月) 码农类 本科 全职@epic - 网上海投 - 在线笔试 |Fail

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

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

x
epic OA挂掉了,准备得不太充分,coding题中有一道additive number比较有意思,又做了一遍,把方法post在这里,希望能帮助大家~攒人品!如果觉得有帮助,不要吝啬大米啊!不知道题的请戳这里http://careercup.appspot.com/question?id=17075662
        public void generateAdditiveNumber(int low, int high)
        {
                int digitHigh = (int) (Math.log10(high)) + 1;
                int digitLow = (int) (Math.log10(low)) + 1;
                for(int i = 3; i <= digitHigh; i++)
                {
                        int firstStart = (int)Math.pow(10, digitLow / i - 1);
                        if(firstStart == 0)
                        {
                                firstStart = 1;
                        }.鏈枃鍘熷垱鑷1point3acres璁哄潧
                        int firstEnd = (int)Math.pow(10, digitHigh / i);. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
                        for(int first = firstStart; first < firstEnd; first++)
                        {
                                int digitNum = (int) (Math.log10(first)) + 1;.1point3acres缃
                                for(int second = 0; second < (int) Math.pow(10, digitNum); second++)
                                {
                                        int previous = first;
                                        int present = second;
                                        StringBuffer value = new StringBuffer();
.鐣欏璁哄潧-涓浜-涓夊垎鍦                                        value.append(String.valueOf(first * (int)Math.pow(10, digitNum) + second));
                                        for(int j = 3; j <= i; j++)
                                        {-google 1point3acres
                                                int number = present + previous;. visit 1point3acres.com for more.
                                                value.append(String.valueOf(number));
                                                previous = present;
                                                present = number;. from: 1point3acres.com/bbs
                                        }
                                        String result = value.toString();
                                        if(result.length() <= digitHigh && Long.valueOf(result) >= (long)low && Long.valueOf(result) <= (long)high) 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
                                        {. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
                                                System.out.println(result);
                                        }               
                                }
                        }                       
                }               
        }






补充内容 (2014-11-24 01:09):
此题还有考虑不周全的地方,因为无法删帖,请直接忽视,谢谢

评分

1

查看全部评分

sophiehu 发表于 2016-2-20 11:34:22 | 显示全部楼层
鼓掌,发现了一个好的网站
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-11-21 09:00

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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