由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - G 店面
相关主题
求教Valid Sudoku求救! Copy List With Random Pointer总是超时
聊聊黑名单吧请教一道经典的dropbox面试题~感谢!
sodoku solver 怎么做?这题到底什么意思?
leetcodeOJ上的sudoku有简单解法吗?谁能写个trie的框架?
二爷来开讲一下用dfs的一般思路吧FG题目包子求教--read4096
是不是所有recursion能解决的问题都有iterative的解法[合集] 那个Google random generate 1-7的题怎么做啊?
这题咋做?请教一道题目
这个G题是DFS还是DP初始化binary tree
相关话题的讨论汇总
话题: int话题: board话题: random话题: ncolors
进入JobHunting版参与讨论
1 (共1页)
b**********5
发帖数: 7881
1
Generate a random starting board for Bejeweled:
Constraints:
1) No 3-in-a-rows of a particular color (horizontally or vertically)
2) At least one valid starting move (i.e., can swap two cells to get a 3-in-
a-row).
int[][] generateRandomBoard(int NColors, int N, int M)
b**********5
发帖数: 7881
2
我用sudoku那题方法做
e**y
发帖数: 784
3
sigh
没玩过这个游戏,做起题来岂不是很吃亏

in-

【在 b**********5 的大作中提到】
: Generate a random starting board for Bejeweled:
: Constraints:
: 1) No 3-in-a-rows of a particular color (horizontally or vertically)
: 2) At least one valid starting move (i.e., can swap two cells to get a 3-in-
: a-row).
: int[][] generateRandomBoard(int NColors, int N, int M)

g**i
发帖数: 20
4
曾经gg也问的我这道题 记得是个android组的人问的
不过我的要求是在随机产生数这块的
LZ加油
b**********5
发帖数: 7881
5
哎, 我这是店面, 先上来聊背景, 然后问了一堆multithread的问题, 然后留了大
概20分钟叫我做这题。 然后我先按照sudoku的答案, 给他解答了不是random的, 满
足第一个要求的。 然后写完后, 我口头上聊了聊, 第二个要求, 怎么modify我的
code。 然后再简单说了说, 要random, 怎么modify我的code。。。
也不知道这样的店面,能不能有第二轮。。。

【在 g**i 的大作中提到】
: 曾经gg也问的我这道题 记得是个android组的人问的
: 不过我的要求是在随机产生数这块的
: LZ加油

l*****n
发帖数: 246
6
没什么思路,想这样做,不知道会不会被人鄙视:
public int[][] generateRandomBoard(int NColors, int N, int M) {
int[][] board = new int[N][M];
boolean isEnd = false;
while(!isEnd){
generateRandomBoard(board, NColors);
isEnd = checkBoard(board);
}
return board;
}
private void generateRandomBoard(int[][] board, int NColors) {
Random rm = new Random();
int N = board.length;
int M = board[0].length;
for(int i=0; i for(int j=0; j int temp = Math.abs(rm.nextInt()%NColors);
while((i>=2 && temp==board[i-1][j] && temp==board[i-2][j])||(j>=
2 && temp==board[i][j-1] && temp==board[i][j-2])){
temp=Math.abs(rm.nextInt()%NColors);
}
board[i][j] = temp;
}
}
}
private boolean checkBoard(int[][] board){
int N = board.length;
int M = board[0].length;
for(int i=0; i for(int j=0; j //check 合适的pattern,如果满足返回true;
}
}
return false;
}
合适的pattern比如说:
011
123
或者
01
01
13
就是check board[i][j]附近有没有在特定的两个位子跟他相等的。
只要NColor不是个特别小的数字,比如说2什么的,就能够基本上得到合适的board.如
果是2的话,第二个函数的while循环可能就停不下来了。。。。orz。。。

【在 b**********5 的大作中提到】
: 哎, 我这是店面, 先上来聊背景, 然后问了一堆multithread的问题, 然后留了大
: 概20分钟叫我做这题。 然后我先按照sudoku的答案, 给他解答了不是random的, 满
: 足第一个要求的。 然后写完后, 我口头上聊了聊, 第二个要求, 怎么modify我的
: code。 然后再简单说了说, 要random, 怎么modify我的code。。。
: 也不知道这样的店面,能不能有第二轮。。。

l*****n
发帖数: 246
7
二十分钟内要把code全部写完,考虑到所有的case然后bug free,好难。。。。
b***e
发帖数: 1419
8
这题要是我店面也做不出来。但是这题挺有意思的。我看分两步走:
第一步先把条件2满足了,也就是在一个随机的三连位置生成一个可调整的染色。
第二步从第一步结果的位置开始,从中间往两边,按对角线的方式扫描填色。按对角线
的原因是对角线上的染色互相无干涉。

in-

【在 b**********5 的大作中提到】
: Generate a random starting board for Bejeweled:
: Constraints:
: 1) No 3-in-a-rows of a particular color (horizontally or vertically)
: 2) At least one valid starting move (i.e., can swap two cells to get a 3-in-
: a-row).
: int[][] generateRandomBoard(int NColors, int N, int M)

w***w
发帖数: 84
9
先满足1 一个个字符的生成 需要算 marginal probability 就是count符合条件的串的
数目 条件2就用 check and rejection 就好 因为符合条件的可能性不小
b**********5
发帖数: 7881
10
我是先按照sudoku那么做, 然后要满足第二条件时, 就是在一开始随机的三联位置生
成一个可调整的。
哎, 谁说G家女马工去面, 就容易。。 我一个女马工, 面过G家几次, 店面都是这
么难, 记得上次是一个二维DP, 去onsite, 题目见都没见过, 听都没听说过。。。

【在 b***e 的大作中提到】
: 这题要是我店面也做不出来。但是这题挺有意思的。我看分两步走:
: 第一步先把条件2满足了,也就是在一个随机的三连位置生成一个可调整的染色。
: 第二步从第一步结果的位置开始,从中间往两边,按对角线的方式扫描填色。按对角线
: 的原因是对角线上的染色互相无干涉。
:
: in-

相关主题
是不是所有recursion能解决的问题都有iterative的解法求救! Copy List With Random Pointer总是超时
这题咋做?请教一道经典的dropbox面试题~感谢!
这个G题是DFS还是DP这题到底什么意思?
进入JobHunting版参与讨论
b**********5
发帖数: 7881
11
顺便问问, 店面后第二天没回音, 是不是就没戏了
B*******1
发帖数: 2454
12
什么变态。问这种问题

★ 发自iPhone App: ChineseWeb 1.0.2

【在 b**********5 的大作中提到】
: 我是先按照sudoku那么做, 然后要满足第二条件时, 就是在一开始随机的三联位置生
: 成一个可调整的。
: 哎, 谁说G家女马工去面, 就容易。。 我一个女马工, 面过G家几次, 店面都是这
: 么难, 记得上次是一个二维DP, 去onsite, 题目见都没见过, 听都没听说过。。。

h****e
发帖数: 2125
13
拍张你正在BBS发文的照片,P掉脸露乳沟,我们才知道你是不是女马工。

【在 b**********5 的大作中提到】
: 我是先按照sudoku那么做, 然后要满足第二条件时, 就是在一开始随机的三联位置生
: 成一个可调整的。
: 哎, 谁说G家女马工去面, 就容易。。 我一个女马工, 面过G家几次, 店面都是这
: 么难, 记得上次是一个二维DP, 去onsite, 题目见都没见过, 听都没听说过。。。

p*u
发帖数: 2454
14
lol 女马工 my ass...

【在 h****e 的大作中提到】
: 拍张你正在BBS发文的照片,P掉脸露乳沟,我们才知道你是不是女马工。
e********u
发帖数: 587
15
我觉得我会先在所有颜色中, random选四种颜色,凑成一个方块. 一个小方块每种颜色
最多出现一次, 然后搭积木一样搭出来,这样能保证不会出现三个同颜色连在一起. 解
决了第一个问题.
第二个问题我觉得有很多种解法,是我要尽快想出的话,我会随机选一个两个连色的, 然
后修改离它们一个位置但是在同一条线上的颜色.
b******i
发帖数: 914
16
不知道这个随机是怎么定义?
完全随机?就是所有满足1)和2)的棋盘等概率的出现?
如果不要求这个,其实还是蛮简单的

in-

【在 b**********5 的大作中提到】
: Generate a random starting board for Bejeweled:
: Constraints:
: 1) No 3-in-a-rows of a particular color (horizontally or vertically)
: 2) At least one valid starting move (i.e., can swap two cells to get a 3-in-
: a-row).
: int[][] generateRandomBoard(int NColors, int N, int M)

b**********5
发帖数: 7881
17
如果不random, 你怎么解? 我是就sudoku解, 然后在一开时的时候, 放一个(0,0
)(1,0)(1,1)同样颜色的

【在 b******i 的大作中提到】
: 不知道这个随机是怎么定义?
: 完全随机?就是所有满足1)和2)的棋盘等概率的出现?
: 如果不要求这个,其实还是蛮简单的
:
: in-

l*****8
发帖数: 1083
18
这道题要做到完全random挺难的
要么对每个生成的board检查一遍,看是否有valid move
要么随机生成valid move的坐标,类型,方向,颜色。。。再放到board中

,0

【在 b**********5 的大作中提到】
: 如果不random, 你怎么解? 我是就sudoku解, 然后在一开时的时候, 放一个(0,0
: )(1,0)(1,1)同样颜色的

b**********5
发帖数: 7881
19
G家是悲剧了好多次了。 每次都遇到这种难题。 有哪个真能人说说到底怎么做?
我就是用soduku II的方法做, DFS加isValid。 然后要满足第二个条件的话, 就一
开始在(0,0),(1,0), (1,1) set to the same color, 然后再DFS
能人说说这对不对啊? 面试官也没说不对。 就让我写。。。 然后我问feedback,
recruiter说不能share feedback。。。。
random有怎么做呢?
h***k
发帖数: 161
20
G onsite碰到这道题。思路是首先满足第二个条件,就是先random一个valid move,然
后开始一边fill board一边查相邻是否valid,是用sudoku那题的backtracking。表示
完整写完code时间不够,只写了个主要的结构,查valid的helper method跟面试官讨论
了下如何实现就没有写出来。
相关主题
谁能写个trie的框架?请教一道题目
FG题目包子求教--read4096初始化binary tree
[合集] 那个Google random generate 1-7的题怎么做啊?randomized quick sort的最坏情况时间复杂度
进入JobHunting版参与讨论
b**********5
发帖数: 7881
21
ok. 那我不就是差不多这么做的么? 我就是先弄一下valid move, 把(0,0),(1
,0), (1,1) set成同样地, 然后我soduku, 然后我写了整个的soduku II, 就
是不知怎么random。。。 我写完后, 跟它说, 你要random, 就可以一开始set 那
个color的时候, random pick一下。。。。
我都写了, 为什么还要据我? 而且, 我写的时候, 他也没有提出什么不对的。。。

【在 h***k 的大作中提到】
: G onsite碰到这道题。思路是首先满足第二个条件,就是先random一个valid move,然
: 后开始一边fill board一边查相邻是否valid,是用sudoku那题的backtracking。表示
: 完整写完code时间不够,只写了个主要的结构,查valid的helper method跟面试官讨论
: 了下如何实现就没有写出来。

w***w
发帖数: 84
22
答案不是在这里了吗?概率问题无非就是数数 你先数所有满足条件1的排列数 不会就
从两种颜色 n=1,2,3 ... 数起 数到5 6啥的总可以看出点规律来吧
没折 暖男总喜欢套公式

【在 w***w 的大作中提到】
: 先满足1 一个个字符的生成 需要算 marginal probability 就是count符合条件的串的
: 数目 条件2就用 check and rejection 就好 因为符合条件的可能性不小

b**********5
发帖数: 7881
23
大姐, 我是做不出来了, 你给个code, 让我看看呗。 虽然我这店面, 已经被拒了

【在 w***w 的大作中提到】
: 答案不是在这里了吗?概率问题无非就是数数 你先数所有满足条件1的排列数 不会就
: 从两种颜色 n=1,2,3 ... 数起 数到5 6啥的总可以看出点规律来吧
: 没折 暖男总喜欢套公式

w***w
发帖数: 84
24
看了有啥用呢?还是先数数吧
b**********5
发帖数: 7881
25
我数不清啊。 你再说说清楚, 或者给个pseudo code看看。。。

【在 w***w 的大作中提到】
: 看了有啥用呢?还是先数数吧
r*******g
发帖数: 1335
26
我对这题很迷糊,怎么感觉不用backtracing
当你需要新插入一个颜色的时候,只需要比较已经有的两个方向就行了,一个是当前方
格左边,一个是当前方格上边,只要保证新插入的颜色和这两个邻接格子颜色不同,就
可以保证没有3个格子是一样颜色,而且也满足了随机性。
估计所谓的随机性是要求每个格子插入每个颜色的概率是相等吧,但是我一下子推导不
出来概率是相等的。
n*******s
发帖数: 17267
27
碰上这种题, 还跟他费什么话啊, 直接让他滚。

【在 b**********5 的大作中提到】
: 我数不清啊。 你再说说清楚, 或者给个pseudo code看看。。。
E******g
发帖数: 204
28
这个方法好!

【在 b***e 的大作中提到】
: 这题要是我店面也做不出来。但是这题挺有意思的。我看分两步走:
: 第一步先把条件2满足了,也就是在一个随机的三连位置生成一个可调整的染色。
: 第二步从第一步结果的位置开始,从中间往两边,按对角线的方式扫描填色。按对角线
: 的原因是对角线上的染色互相无干涉。
:
: in-

f***k
发帖数: 147
29
思路是对的,先生成一行或一列同颜色的;
然后随机填满剩下所有cell,color的int随机取,用类似sudoku的方法validate每一次
取。
最后把同颜色列任取一个cell和旁边置换。
l******s
发帖数: 3045
30
I'm thinking filling out rest of cells around the random valid move a better
idea.
相关主题
问一下shuffle card问题聊聊黑名单吧
做Oracle ADF的咨询公司sodoku solver 怎么做?
求教Valid SudokuleetcodeOJ上的sudoku有简单解法吗?
进入JobHunting版参与讨论
m*****n
发帖数: 204
31
如果我没理解错的话,你的代码生成的是一个固定的盘,而不是随机的。你说的换起始
颜色不改变盘的性质。
按六楼的思路写个满足第一条的解法,嘴上再把第二条扯一扯就行了。八楼是一个思路
。一个一个硬试也是个思路,谈谈复杂度啥的应该能混过去。

(1

【在 b**********5 的大作中提到】
: ok. 那我不就是差不多这么做的么? 我就是先弄一下valid move, 把(0,0),(1
: ,0), (1,1) set成同样地, 然后我soduku, 然后我写了整个的soduku II, 就
: 是不知怎么random。。。 我写完后, 跟它说, 你要random, 就可以一开始set 那
: 个color的时候, random pick一下。。。。
: 我都写了, 为什么还要据我? 而且, 我写的时候, 他也没有提出什么不对的。。。

1 (共1页)
进入JobHunting版参与讨论
相关主题
初始化binary tree二爷来开讲一下用dfs的一般思路吧
randomized quick sort的最坏情况时间复杂度是不是所有recursion能解决的问题都有iterative的解法
问一下shuffle card问题这题咋做?
做Oracle ADF的咨询公司这个G题是DFS还是DP
求教Valid Sudoku求救! Copy List With Random Pointer总是超时
聊聊黑名单吧请教一道经典的dropbox面试题~感谢!
sodoku solver 怎么做?这题到底什么意思?
leetcodeOJ上的sudoku有简单解法吗?谁能写个trie的框架?
相关话题的讨论汇总
话题: int话题: board话题: random话题: ncolors