论坛首页 招聘求职论坛

难道java程序员真比C程序员弱

浏览 33717 次
该帖已经被评为隐藏帖
作者 正文
   发表时间:2011-10-09  
gjanyanlig 写道
smiky 写道
你们真牛B,你去高中找人做,这题拿到高三去做不会超过1/10的人能做对,不知道你们这些人的智商优越感从何而来?
JAVA程序员这方面是不行,那你C程序员来分布式,集群,数据库就牛B?


++1


你以为分布式,只有把web网站放到N个服务器执行操作就是分布式了嘛,大型复杂运算才是分布式的目的,要是java程序员连计算方法都写不出,如何去分布运算。  假如一个C程序员能写出计算方法,把源码翻译成java语言,需要多少成本呢
  数据库你指的是方面,我就不知道了。
集群?是java程序就是集群最厉害的嘛~~~~
0 请登录后投票
   发表时间:2011-10-09  
c跟java的本质区别,就是算法跟设计模式的区别,都是人走得多,自然成为路。解决的问题域本质不同,又岂能胡搅蛮缠。楼主提出这两个问题肯定有实际的业务需要,经过提炼而成为对应的算法需求,这是高明之处,也是优秀程序员需要具备的一个能力,但是拿来做招聘题目就显得贵公司小题大做了,别整天吵吵嚷嚷找不到人,该反思的是你们这些自以为是的招聘方式。
0 请登录后投票
   发表时间:2011-10-09   最后修改:2011-10-09
我也看了下 题目 说说自己的想法
第一题:
我还是 排列组合的思想 呵呵

首先呢 是个环,中间也有环,所以先确定中间的环和第一个扇形 就是 m(m-1)种
然后 就把环 变成一个 列了   共有n-1个方格, (m-2)种颜色
这样的话 也就是 转成在里面 填颜色不重复了
第一个是 m-2种  后面的 任意一个 都 是 m-3种  一共是 n-2个小格 所以就是 (m-3)的 (n-2)次幂
这样的话共有 (m-2)(m-3)^(n-2) 种
综合起来是 m(m-1)(m-2)(m-3)^(n-2)

不知对否
待楼主点评
0 请登录后投票
   发表时间:2011-10-09  
你招的Java都是搞web的吧?
0 请登录后投票
   发表时间:2011-10-09  
jacky1118sally 写道
我也看了下 题目 说说自己的想法
第一题:
我还是 排列组合的思想 呵呵

首先呢 是个环,中间也有环,所以先确定中间的环和第一个扇形 就是 m(m-1)种
然后 就把环 变成一个 列了   共有n-1个方格, (m-2)种颜色
这样的话 也就是 转成在里面 填颜色不重复了
第一个是 m-2种  后面的 任意一个 都 是 m-3种  一共是 n-2个小格 所以就是 (m-3)的 (n-2)次幂
这样的话共有 (m-2)(m-3)^(n-2) 种
综合起来是 m(m-1)(m-2)(m-3)^(n-2)

不知对否
待楼主点评


我前面解释了,这个为什么不对。
0 请登录后投票
   发表时间:2011-10-09  
支持lz的出题方向。no more.
0 请登录后投票
   发表时间:2011-10-09  
wzar 写道
给高中生做 10个有9个都能做出来

+1
这本身 就是高中的 着色问题嘛
0 请登录后投票
   发表时间:2011-10-09  
第一题
不知道是我自己把简单的问题想复杂了还是复杂问题想简单了
开始按照每一个扇形的位置都是固定的,想了半天第N个扇形怎么填,最后放弃了直接写出表达式的努力,然后按自己的理解写了个方法(还不知道对不对


      // n为扇形数,m为颜色数
	public static long test(int n,int m){
		//处理下特殊情况
		//至少有一个扇形(环形)
		if(n<1)
			return -1L;
		//只有一个扇形(环形)
		if(n==1){
			//至少需要2种颜色
			if(m<2)
				return -1L;
			else
				return m*(m-1L);
		}
		//在有2个扇形以上的情况下,至少需要3种以上的颜色
		if(m<3)
			return -1;
		//在有2个扇形以上并且有3种颜色的情况下
		else if(m==3){
			//扇形数不能为奇数,否则至少有一组相邻的扇形涂色一样
			if(n%2==1)
				return -1L;
			else{
				return 3*2L;
			}
		}
		//处理一般情况,即至少要有2个扇形并且至少有4种颜色
		else{
			long nl = n;
			long ml = m;
			long result = -1;
			if(nl==2){
				result = ml*(ml-1)*(ml-2);
			}
			else{
				result = ml*(ml-1);
				for(int i=2;i<=nl;i++){
					result *= (ml-2);
				}
				result -= test(n-1,m);
			}
			return result;
		}
	}


可是最后发现题里边并没有强调每一个扇形的位置是固定的,有点迷糊,看来自己差很多啊。

0 请登录后投票
   发表时间:2011-10-09  
我上周到书店看小学9年级的数学题,不会做了
0 请登录后投票
   发表时间:2011-10-09  
wzar 写道
楼上应该最后一个是(m-3)

最后一个是 m-3 貌似也不对,因为第一个和第n-1个扇形的颜色存在颜色相同和颜色不同2种情况,2种情况分别为a,b
那么应该有 a+b = m*(m-1)*(m-2)^(n-2)。然后答案应该为 a*(m-2) + b*(m-3) 。
不知道我像的对不对,不过即便我像的没错,可我还是没想出来怎么直接用一个表达式表示答案。
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics