一亩三分地论坛

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

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

[找工就业] Epic OA Mingo 这道题求解

[复制链接] |试试Instant~ |关注本帖
davidzeng1990 发表于 2014-11-16 09:23:45 | 显示全部楼层 |阅读模式
66小米
There is a game they termed as Mingo. A random generator (like a speaker standing in a group housie game calls out a number) generates out any number from 1 to 1000.
There is a 10X10 matrix. A random generator assigns values to each block of this matrix(within 1 to 1000 obviously).
Whenever, a row or a column or a diagonal is fully filled in this 10x10 from the numbers called out by the speaker, its called a 'Mingo'.
Write a program that will find first Mingo, then second Mingo, then thirds Mingo...and so forth.


各位大神,。。。麻烦给解释下题意,然后给个解题思路(有代码最好),跪谢了!!。。

最佳答案

查看完整内容

虽然不是我写的,但是是我看到比较简单易懂符合题意的了。小米有什么用啊?public class CheckMingle { int[[ matrix = new int[10[10; static int count = 0; static boolean diagChecked=false; void initial() { for (int i = 0; i < matrix.length; i++) { for (int j = 0; j < matrix[0.length; j++) { matrix[i[j = 0; } } } void printMingle() { for (int i = 0; i < matrix.length; i++) { for (int j = 0; j ...
3319233 发表于 2014-11-16 09:23:46 | 显示全部楼层
虽然不是我写的,但是是我看到比较简单易懂符合题意的了。小米有什么用啊?public class CheckMingle {        int[[ matrix = new int[10[10;        static int count = 0;        static boolean diagChecked=false;        void initial() {                for (int i = 0; i < matrix.length; i++) {                        for (int j = 0; j < matrix[0.length; j++) {                                matrix[i[j = 0;                        }                }        }        void printMingle() {                for (int i = 0; i < matrix.length; i++) {                        for (int j = 0; j < matrix[0.length; j++) {                                System.out.print(matrix[i[j + "    ");                        }                        System.out.println();                }        }        void isMingo(int[[ matrix) {                int value = 0;                int row = 0;                int col = 0;                int data = 0;                for (int i = 0; i < 100; i++) {                        value = (int) (Math.random() * 100);                        row = value / 10;                        col = value - row * 10;                        while (matrix[row[col != 0) {                                value = (int) (Math.random() * 100);                                row = value / 10;                                col = value - row * 10;                        }                        data = (int) (Math.random() * 1000);                        matrix[row[col = data;                        checkMingle(matrix, row, col);                }                        }        void checkMingle(int[[ matrix, int row, int col) {                [size=0.885em]// check row                int index = 0;                while (index < matrix[row.length && matrix[row[index != 0) {                        index++;                }                if (index == matrix[row.length) {                        count++;                        System.out.println("Number " + count + " mingle"+" row:"+row);                }                [size=0.885em]// check column                index = 0;                while (index < matrix.length && matrix[index[col != 0) {                        index++;                }                if (index == matrix.length) {                        count++;                        System.out.println("Number " + count + " mingle"+" col: "+col);                }                [size=0.885em]//check diag                if(!diagChecked){                                index=0;                                while(index<matrix.length&&matrix[index[index]!=0){                                        index++;                        }                        if(index==matrix.length){                        count++;                        System.out.println("Number " + count + " mingle"+" row:"+row+" col: "+col+"It is diag!!!!");                        diagChecked=true;                        }                                        }        }        public static void main(String[ args) {                CheckMingle cm = new CheckMingle();                cm.initial();                cm.isMingo(cm.matrix);                cm.printMingle();        }}
.鐣欏璁哄潧-涓浜-涓夊垎鍦
补充内容 (2014-11-16 09:46):
0 0乱码了。。
.1point3acres缃
补充内容 (2014-11-16 09:48): 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
career cup上有,妹子去找吧

评分

1

查看全部评分

回复

使用道具 举报

 楼主| davidzeng1990 发表于 2014-11-16 09:57:45 | 显示全部楼层
3319233 发表于 2014-11-16 09:45
虽然不是我写的,但是是我看到比较简单易懂符合题意的了。小米有什么用啊?public class CheckMingle {        int ...

想问下题意是什么意思…………我没看懂题目。。求解释。。。
回复

使用道具 举报

 楼主| davidzeng1990 发表于 2014-11-16 10:02:35 | 显示全部楼层
是说只是点一下这个matrix的col,row和diag是不是都有数值? 都有的话就返回一个mingo??? 可问题是这个random number generator是如何给这个matrix 赋值的??这个怎么实现??。。。
回复

使用道具 举报

robend 发表于 2014-11-16 11:46:51 | 显示全部楼层
题目:说有一个10X10的矩阵(就是有100个格子),有一个数字产生器,随机产生1-1000的数,随机放在其中的一个格子里。
如果格子有一排或一列,或一个对角线都有数,就叫做MINGO。.1point3acres缃
请写出程序,发现第一个到第n个MINGO.
PS:一个格子能放多个数还是覆盖原来的数,题目没说,但这不影响结果。
回复

使用道具 举报

 楼主| davidzeng1990 发表于 2014-11-16 12:38:19 | 显示全部楼层
robend 发表于 2014-11-16 11:46
题目:说有一个10X10的矩阵(就是有100个格子),有一个数字产生器,随机产生1-1000的数,随机放在其中的一 ...

那产生的随机数放到哪个格子里? 这个过程是自己随意构造的吗?
回复

使用道具 举报

robend 发表于 2014-11-16 15:30:24 | 显示全部楼层
davidzeng1990 发表于 2014-11-16 12:38. Waral 鍗氬鏈夋洿澶氭枃绔,
那产生的随机数放到哪个格子里? 这个过程是自己随意构造的吗?

这。。。“随机放在其中的一个格子里”。也许有别的可能,这只是我的理解。

评分

1

查看全部评分

回复

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-9 23:42

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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