2017/11/26 武汉市城市规划设计院面试情况小记(1)

来源:互联网 发布:翻墙看视频软件 编辑:程序博客网 时间:2024/04/24 17:17

早上起了个大早,6点35起来洗漱,从宿舍骑小黄车到光谷地铁站,早上F口不开,还得绕到鲁巷后面从E口进,贼坑。坐2号线到循礼门,转1号线往三阳路方向走两站,出地铁过个马路,就到了武汉市城市规划研究院。
8点左右到达,8点半进去上机考试,考试题目是这样的:
治疗颈椎病专用图
拿到题目比较蛋疼,这是想搞么斯啊,纠结了半天,把它当做一个分类问题考虑了,想使用模糊评判或者C-means分类进行处理,奈何源代码不好找啊,最后用MATLAB自带的分类器做了,真为我的机智感到开心。

x1=rand(1,100)*(3.0-2.0)+2.0;%容积率x2=0.13+rand(1,100)*(0.2-0.13);%建筑密度x3=0.5+rand(1,100)*(0.7-0.5);%绿地率%假定分布y1=ones(1,60);y2=zeros(1,40);y=[y1,y2];%数据data = [y;x1;x2;x3];%训练数据X=[2.5;0.16;0.65];%待预测数据%调用分类工具箱生成分类预测模型trainedModel,也可以选择SVM,神经网络,甚至深度学习等算法classificationLearner;%类别判断yfit = trainedModel.predictFcn(X);if(yfit==0)    disp('非商品住宅');endif(yfit==1)    disp('商品住宅');end
题目出的有点玄学的感觉,让人摸不着头脑。它是想考察啥?我们要猜测出题人的意图对不对?我猜他是想让面试者都滚蛋。用MATLAB做了一下之后还想弄个界面啥的,显得专业一点。祭出微软爸爸的VS2012,拉窗体拉控件一顿操作猛如虎,最后分类器他娘的不会写啊不会写。C#结合MATLAB混合编程试试?百度教程到崩溃。最后没辙了,跟人讲解的时候说只实现了数据的输入,暂时还没有实现功能。但我有界面啊,厉害不?两种编程语言无缝对接(呵呵),程序短小精悍通俗易懂,给我Offer给我Offer给我Offer!!!

程序界面
这里写图片描述
弄完都12点了,公司给买了盒饭,荤素搭配还有个萝卜汤,赞一个。跟武大的几个交流了一下,人家说用蒙特卡洛模拟做的,出题人说啦,瞬间心态爆炸。100个随机数也算蒙特卡洛啊,100个数掰着手指头也数的过来啊,顶多多数几遍啊,真的气。午休时间加班把程序重新弄了一下,运行结果是这样的了:
这里写图片描述

打开按钮为打开EXCEL文件,dataGridView1接受EXCEL文件。第一列为标签列,第二到第四列为随机生成的属性列。文本框输入待处理数据值。
计算按钮实现代码:

        private void button1_Click(object sender, EventArgs e)        {            double[,] data = new double[100,4];            for (int i = 0; i < 100; i++)            {                for (int j = 0; j < 4; j++)                {                    data[i, j] = double.Parse(dataGridView1.Rows[i].Cells[j].Value.ToString());                }            }            int sum_v1 = 0;            int sum_p1 = 0;            int sum_grass1 = 0;            int sum_v2 = 0;            int sum_p2 = 0;            int sum_grass2 = 0;            for (int i = 0; i < 100; i++)            {                if (data[i, 0] == 1 && data[i, 1] == double.Parse(txtV.Text.ToString())) sum_v1++;                if (data[i, 0] == 1 && data[i, 2] == double.Parse(txtP.Text.ToString())) sum_p1++;                if (data[i, 0] == 1 && data[i, 3] == double.Parse(txtV.Text.ToString())) sum_grass1++;                if (data[i, 0] == 0 && data[i, 1] == double.Parse(txtV.Text.ToString())) sum_v2++;                if (data[i, 0] == 0 && data[i, 2] == double.Parse(txtP.Text.ToString())) sum_p2++;                if (data[i, 0] == 0 && data[i, 3] == double.Parse(txtGrass.Text.ToString())) sum_grass2++;            }            double Prob1 = (double)(sum_v1) / (double)100 * (double)sum_p1 / (double)100 * (double)sum_grass1 / (double)100;            double Prob2 = (double)(sum_v2) / (double)100 * (double)sum_p2 / (double)100 * (double)sum_grass2 / (double)100;            if (Prob1 > Prob2) result = 1;            if (Prob1 <= Prob2) result = 0;            if (result == 1)            {                MessageBox.Show("该房屋属于商品住宅 ","系统提示!");            }            else if (result == 0)            {                MessageBox.Show("该房屋属于非商品住宅" , "系统提示!");            }            else            {                MessageBox.Show("条件那么好,我猜应该是商品住宅", "系统提示");            }        }    }

这样计算概率并比较是不是有问题,谁爱纠结就去纠结吧。

下午面试,本来我是第一个,结果我的电脑是HDMI接口,又没有带转接线,真的坑。
第二个进去,借个U盘插演示的电脑上居然没有反应,真的坑。
面试问我都博士了,还来我们这面试,你是什么心态,唉,这叫我怎么回答,真的坑。
问完撤退,地铁上又挤又热,到杨家湾了才有个座,真的坑。
昨晚3点多才睡,精神又亢奋又神经衰弱,下棋一盘接一盘的输,真的坑。。。。。。
当然收获也不小,如随机数如何归化到指定范围啊,MATLAB工具箱的调用啊,EXCEL函数的使用啊,如ROUND,RAND,话说EXCEL真的6,想想自己写得那些所谓的软件,那些功能,都可以使用EXCEL实现,那种心情,怎么说来着,我的内心毫无波澜,甚至还有点小雀跃。

原创粉丝点击