一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1580|回复: 16
收起左侧

Microsoft 30 mins on-campus interview

[复制链接] |试试Instant~ |关注本帖
arrxinn_gl 发表于 2015-10-6 08:01:52 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 本科 全职@Microsoft - 网上海投 - 校园招聘会 |Otherfresh grad应届毕业生

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

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

x
30 mins On-Campus Interview.
就像windows的那个画图里面填色的工具,如果我们想涂色的时候把涂色工具放到需要涂色的pixel上点击,就会把与那个点周围的颜色一样的连着的所有pixel涂色。

题目就是给一个图片 和 一个 pixel,找出所有和given pixel相连的点。

评分

2

查看全部评分

水逼一枚 发表于 2015-10-6 08:06:14 | 显示全部楼层
楼主写的是4 directions的flood fill还是8 directions的flood fill
回复 支持 反对

使用道具 举报

水逼一枚 发表于 2015-10-6 08:06:59 | 显示全部楼层
hsmwz34 发表于 2015-10-6 08:06
cmu的同学?能否再具体一点?

就是常规DFS
回复 支持 反对

使用道具 举报

storm_hair 发表于 2015-10-6 08:09:47 | 显示全部楼层
Use a matrix to represent the picture; Given pixel (i, j), define {(i+/-1, j+/-1)} as its neighbors, if two neighbors' color are the same, they are connected. Therefore the problem is to find the connected component starting from (i, j). Use BFS to solve it.
回复 支持 反对

使用道具 举报

wz366 发表于 2015-10-6 08:27:18 | 显示全部楼层
storm_hair 发表于 2015-10-6 08:09
Use a matrix to represent the picture; Given pixel (i, j), define {(i+/-1, j+/-1)} as its neighbors, ...

Can you explain "if two neighbors' color are the same, they are connected"? Same means same color as the starting point? Or two neighbors have the same color?
回复 支持 反对

使用道具 举报

kidzlike 发表于 2015-10-6 10:24:17 | 显示全部楼层
bfs or dfs is ok
回复 支持 反对

使用道具 举报

 楼主| arrxinn_gl 发表于 2015-10-6 16:59:38 | 显示全部楼层
hsmwz34 发表于 2015-10-6 08:30
有什么其他要求吗,像behaviour之类的

你好, 一开始就是说说projects,然后就马上进入coding problem了 因为时间比较少
回复 支持 反对

使用道具 举报

 楼主| arrxinn_gl 发表于 2015-10-8 14:20:37 | 显示全部楼层
水逼一枚 发表于 2015-10-6 08:06
楼主写的是4 directions的flood fill还是8 directions的flood fill

你好, 是 4 directions  的
回复 支持 反对

使用道具 举报

miss_snow 发表于 2015-10-12 04:58:52 | 显示全部楼层
storm_hair 发表于 2015-10-6 08:09
Use a matrix to represent the picture; Given pixel (i, j), define {(i+/-1, j+/-1)} as its neighbors, ...

.鏈枃鍘熷垱鑷1point3acres璁哄潧好厉害~麻烦问一下你是哪里知道这个原题的?
回复 支持 反对

使用道具 举报

storm_hair 发表于 2015-10-12 05:25:21 | 显示全部楼层
miss_snow 发表于 2015-10-12 04:58
好厉害~麻烦问一下你是哪里知道这个原题的?

从这个帖子
回复 支持 反对

使用道具 举报

miss_snow 发表于 2015-10-12 05:32:35 | 显示全部楼层
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
额……你是说就是翻译楼主的话嘛? 2333333
回复 支持 反对

使用道具 举报

ico0018 发表于 2015-10-20 19:48:54 | 显示全部楼层
private static void drawColor(int[][] map, int x, int y) {
                if (x >= map[0].length || y >= map.length || x < 0 || y < 0) {
                        return;
                }
                if (map[x][y] == 1) {
                        map[x][y] = 2;
                        drawColor(map, x + 1, y);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
                        drawColor(map, x, y + 1);
                        drawColor(map, x - 1, y);
                        drawColor(map, x, y - 1);
                }
        }
回复 支持 反对

使用道具 举报

ztang 发表于 2015-10-20 22:48:15 | 显示全部楼层
感觉on campus的题目难易程度差别很大啊
回复 支持 反对

使用道具 举报

jy02535954 发表于 2015-10-23 05:49:07 | 显示全部楼层
ico0018 发表于 2015-10-20 19:48
private static void drawColor(int[][] map, int x, int y) {
                if (x >= map[0].length || y >= map.len ...

你只涂了四个点,,斜向的怎么考虑? 画笔大小因素是不是也该考虑。。。看了前面的一些回复 貌似使用dfs bfs 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
回复 支持 反对

使用道具 举报

ico0018 发表于 2015-10-23 06:34:06 | 显示全部楼层
八个的话递归的时候多加方向就可以了。这个不是直接填充么,为什么要考虑画笔大小?
回复 支持 反对

使用道具 举报

jy02535954 发表于 2015-10-23 07:25:24 | 显示全部楼层
ico0018 发表于 2015-10-23 06:34
八个的话递归的时候多加方向就可以了。这个不是直接填充么,为什么要考虑画笔大小?

因为我记得画笔一般是一个圆圈。。而像素点时方的。。. 鍥磋鎴戜滑@1point 3 acres
回复 支持 反对

使用道具 举报

jy02535954 发表于 2015-10-23 07:25:34 | 显示全部楼层
ico0018 发表于 2015-10-23 06:34. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
八个的话递归的时候多加方向就可以了。这个不是直接填充么,为什么要考虑画笔大小?

因为我记得画笔一般是一个圆圈。。而像素点时方的。。
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-5 03:40

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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