楼主: Aprilyn
跳转到指定楼层
上一主题 下一主题
收起左侧

Google onsite 面经

🔗
guixi107 2016-2-11 02:44:58 | 只看该作者
全局:
Aprilyn 发表于 2016-2-11 02:18
囧,本来都在打字的,发现自己原来的想法不是那么对,面试官还说没更好的解了。。突然坦然了,估计面试官 ...

lz 可以用dfs(power set)来算,然后用set dedup吗?
回复

使用道具 举报

🔗
 楼主| Aprilyn 2016-2-11 03:00:00 | 只看该作者
全局:
guixi107 发表于 2016-2-11 02:44
lz 可以用dfs(power set)来算,然后用set dedup吗?

嗯呐,我一开始就说了dfs的解法,也说了关于硬币币值重复,需要剪枝的优化. 被继续追问了。

回复

使用道具 举报

🔗
xiaohl0913 2016-2-19 14:31:53 | 只看该作者
全局:
看花那个问题,先想成一维的。二维差不多就是4个一维的问题吧
回复

使用道具 举报

🔗
xiaohl0913 2016-2-22 06:49:04 | 只看该作者
全局:
第一题cut, 能不能用k-select做。就是大小比较定义按照楼主给的比例来定义。这样应该可以O(n)。不知道楼主的Greedy是怎么做的。
回复

使用道具 举报

🔗
hzyslddm 2016-2-25 02:59:00 | 只看该作者
全局:
Aprilyn 发表于 2016-2-10 13:21
假设有四个点:
A B
C D 的值为:

如果B是statue,C和A是空地或者花的话,就不能这么算了。或者记录的值不考虑自己的状态,在考虑下一个值的时候再考虑这个值的状态?
回复

使用道具 举报

🔗
yanggao1119 2016-2-26 02:10:53 | 只看该作者
全局:
楼主,这题能不能用四个matrix啊,分别存放从左到右,从右到左,从上倒下,从下到上的连续非2的sum, up to an index
这样是不是会被面试官k死。。。
回复

使用道具 举报

🔗
bobzhang2004 2016-3-4 11:36:40 | 只看该作者
全局:
感觉楼主面的很好啊,思路基本都是对的,为什么会挂呢
回复

使用道具 举报

🔗
bobzhang2004 2016-3-4 17:42:46 | 只看该作者
全局:
coin change,
  1. public class CoinsChange {
  2.         public static void main(String[] args) {
  3.                 int[] arr = {5, 5, 10, 10, 20, 20};
  4.                 System.out.println(getCoinsChangeWays(arr, 40));
  5.         }
  6.        
  7.         public static int getCoinsChangeWays(int[] arr, int k) {
  8.                 if (arr == null || arr.length == 0) {
  9.                         return 0;
  10.                 }
  11.                 int[] dp = new int[k + 1];
  12.                 dp[0] = 1;
  13.                 for (int i = 0; i < arr.length; i++) {
  14.                         for (int j = k; j > 0; j--) {
  15.                                 if (j - arr[i] >= 0) {
  16.                                         dp[j] += dp[j - arr[i]];
  17.                                 }
  18.                         }
  19.                 }
  20.                
  21.                 return dp[k];
  22.         }
  23. }
复制代码
回复

使用道具 举报

🔗
bobzhang2004 2016-3-4 17:43:06 | 只看该作者
全局:
第一题的做法
  1. public class WoodcutII {
  2.        
  3.         public static void main(String[] args) {
  4.                 int[] arr = {10, 15, 20, 25, 45};
  5.                 System.out.println(getMaxLength(arr, 1));
  6.                 System.out.println(getMaxLength(arr, 2));
  7.                 System.out.println(getMaxLength(arr, 3));
  8.                 System.out.println(getMaxLength(arr, 4));
  9.                 System.out.println(getMaxLength(arr, 5));
  10.         }
  11.         public static int getMaxLength(int[] arr, int k) {
  12.                 List<Integer> tens = new ArrayList<Integer>();
  13.                 int others = 0;
  14.                 for (int i : arr) {
  15.                         if (i % 10 == 0) {
  16.                                 tens.add(i);
  17.                         } else {
  18.                                 others++;
  19.                         }
  20.                 }
  21.                 Collections.sort(tens);
  22.                 int i = 0;
  23.                 int res = 0;
  24.                 while (k > 0 && i < tens.size()) {
  25.                         int num = tens.get(i) / 10;
  26.                         if (k >= num - 1) {
  27.                                 res += num;
  28.                                 k -= (num - 1);
  29.                         } else {
  30.                                 res += k;
  31.                                 k = 0;
  32.                         }
  33.                         i++;
  34.                 }
  35.                 res += Math.min(k, others);
  36.                
  37.                 return res;
  38.         }
  39. }
复制代码

评分

参与人数 1大米 +3 收起 理由
火火火bit + 3 感谢分享!

查看全部评分

回复

使用道具 举报

🔗
 楼主| Aprilyn 2016-3-5 05:56:09 | 只看该作者
全局:
yanggao1119 发表于 2016-2-26 02:10
楼主,这题能不能用四个matrix啊,分别存放从左到右,从右到左,从上倒下,从下到上的连续非2的sum, up to ...

所以最好就是一个~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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