推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

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

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

Twitter OA March 19

[复制链接] |试试Instant~ |关注本帖
ilmlj 发表于 2016-3-20 09:38:15 | 显示全部楼层 |阅读模式

2016(4-6月) 码农类 博士 实习@Twitter - 网上海投 - 在线笔试 |Otherfresh grad应届毕业生

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

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

x

Twitter 最近在下 OA 雨刚刚做完,共两题:
. from: 1point3acres.com/bbs
1. 对于某个数N, 算出其是否能够被写成 N = p^q 的形式。. Waral 鍗氬鏈夋洿澶氭枃绔,
2. Game of Thrones. 地理已有原题,不再重复。

求过啊。. Waral 鍗氬鏈夋洿澶氭枃绔,





评分

1

查看全部评分

duoduo33 发表于 2016-3-20 09:46:34 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
求问,Game of Thrones 求的是是否为palindrome 还是 palindrome anagram的个数?
回复 支持 反对

使用道具 举报

 楼主| ilmlj 发表于 2016-3-20 09:49:16 | 显示全部楼层
关注一亩三分地微博:
Warald
duoduo33 发表于 2016-3-20 09:46. 1point 3acres 璁哄潧
求问,Game of Thrones 求的是是否为palindrome 还是 palindrome anagram的个数?

没问个数。只问是否
回复 支持 反对

使用道具 举报

xoxoxoxooxoxoxo 发表于 2016-3-20 09:51:49 | 显示全部楼层
请问第一题,楼主也是用 sqrt() 下去解吗?
回复 支持 反对

使用道具 举报

 楼主| ilmlj 发表于 2016-3-23 09:00:38 | 显示全部楼层
xoxoxoxooxoxoxo 发表于 2016-3-20 09:51
请问第一题,楼主也是用 sqrt() 下去解吗?

没太清楚你意思
回复 支持 反对

使用道具 举报

海盗包子 发表于 2016-3-24 04:10:01 | 显示全部楼层
请问楼主OA是可以一个小时内提交多次嘛?提交次数会不会对结果有影响呢?
回复 支持 反对

使用道具 举报

BrilliantBean 发表于 2016-3-24 06:30:45 | 显示全部楼层
请问楼主 第一题的思路是神马
回复 支持 反对

使用道具 举报

ok123 发表于 2016-3-24 06:45:50 | 显示全部楼层
xoxoxoxooxoxoxo 发表于 2016-3-20 09:51
请问第一题,楼主也是用 sqrt() 下去解吗?
. From 1point 3acres bbs
找出所有的质数因子,. Waral 鍗氬鏈夋洿澶氭枃绔,
看质数个数能不能都除以二,三。。。
回复 支持 反对

使用道具 举报

海盗包子 发表于 2016-3-24 09:22:13 | 显示全部楼层
写了一下第一题,代码有点丑 主要思路就是求出所有质因数,统计各个质因数的个数,再求出他们的最大公约数,。如果最大公约数是1就返回false,这里有加入负数的考虑情况。
  1.     public static boolean sqrtpq(int n) {
  2.         if (n == 1 || n == 0)
  3.             return true;
  4.         int flag = 0;
  5.         if(n < 0) {. From 1point 3acres bbs
  6.             flag = 1;
  7.             n = -n;
  8.         }
  9.         HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
  10.         ArrayList<Integer> list = new ArrayList<Integer>();
  11.         int cnt = 0;. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  12.         while(n % 2 == 0) {
  13.             cnt++;
  14.             n = n / 2;
  15.         }
  16.         if(cnt != 0)
  17.             map.put(2, cnt);
  18.         int i = 3;
  19.         while(n != 1){
  20.             cnt = 0;. from: 1point3acres.com/bbs
  21.             while(n % i == 0) {
  22.                 cnt++;. from: 1point3acres.com/bbs
  23.                 n = n / i;
  24.             }. 1point 3acres 璁哄潧
  25.             if(cnt != 0). from: 1point3acres.com/bbs
  26.                 map.put(i,cnt);
  27.             i += 2;
  28.         }
  29.         for(Integer key : map.keySet()) {
  30.             list.add(map.get(key));
  31.         }
  32.         int gcd = ngcd(list, list.size());
  33.         
  34.         if(gcd == 1)
  35.             return false;
  36.         if(flag == 0)
  37.             return true;
  38.         
  39.         gcd = gcd - 1;
  40.         while((gcd & 1) == 1) {
  41.             gcd >>= 1;
  42.         }.鏈枃鍘熷垱鑷1point3acres璁哄潧
  43.         if (gcd== 0)
  44.             return false;. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  45.         else
  46.             return true;
  47.          
  48.     }
复制代码
回复 支持 反对

使用道具 举报

BrilliantBean 发表于 2016-3-24 10:55:22 | 显示全部楼层
请问楼主 第一题有负数的情况吗
回复 支持 反对

使用道具 举报

BrilliantBean 发表于 2016-3-24 11:12:11 | 显示全部楼层
海盗包子 发表于 2016-3-24 09:22
写了一下第一题,代码有点丑 主要思路就是求出所有质因数,统计各个质因数的个数,再求出他们的最 ...

ngcd是自己写的求gcd的函数吗
回复 支持 反对

使用道具 举报

海盗包子 发表于 2016-3-24 13:17:12 | 显示全部楼层
BrilliantBean 发表于 2016-3-24 11:12
ngcd是自己写的求gcd的函数吗
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
对的,就是一个递归求多个数的gcd
回复 支持 反对

使用道具 举报

 楼主| ilmlj 发表于 2016-3-25 10:53:07 | 显示全部楼层
海盗包子 发表于 2016-3-24 04:10. more info on 1point3acres.com
请问楼主OA是可以一个小时内提交多次嘛?提交次数会不会对结果有影响呢?
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
对的,可以多次提交
回复 支持 反对

使用道具 举报

 楼主| ilmlj 发表于 2016-3-25 10:53:48 | 显示全部楼层
BrilliantBean 发表于 2016-3-24 10:55
请问楼主 第一题有负数的情况吗

没有负数的情况[凑字数]
回复 支持 反对

使用道具 举报

sealove999 发表于 2016-3-27 08:45:21 | 显示全部楼层
海盗包子 发表于 2016-3-24 09:22
写了一下第一题,代码有点丑 主要思路就是求出所有质因数,统计各个质因数的个数,再求出他们的最 ...
  1. public class Solution {
  2.   static int gcd(int a, int b) {
  3.     if (a == 0 || b == 0)
  4.       return a + b;
  5.     return gcd(b, a % b);. visit 1point3acres.com for more.
  6.   }

  7.   static boolean pq(int a) {. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  8.     if (a == 0 || a == 1)
  9.       return true;. 鍥磋鎴戜滑@1point 3 acres
  10.     Map<Integer, Integer> m = new HashMap<>();
  11.     for (int i = 2; i <= a; i++) {
  12.       if (a % i == 0) {. 1point3acres.com/bbs
  13.         int count = 0;
  14.         while (a % i == 0) {
  15.           count++;. 1point3acres.com/bbs
  16.           a /= i;
    . 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  17.         }
  18.         m.put(i, count);.鏈枃鍘熷垱鑷1point3acres璁哄潧
  19.       }
  20.     }
  21.     List<Integer> l = m.values().stream().collect(Collectors.toList());. From 1point 3acres bbs
  22.     int g = l.get(0);
  23.     for (Integer i : l) {
  24.       g = gcd(g, i);
  25.     }
  26.     return g != 1;
  27.   }

  28.   public static void main(String[] args) {
  29.     System.out.println(pq(144));
  30.   }.1point3acres缃
  31. }. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
复制代码
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-26 04:54

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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