Gdliyy注: 确实没看明白,楼主也想得太复杂了:)不清楚为何排名不用Rank(),反而用了系列数学算法,反正我是看晕了。但总体来看好象只考虑2人并列的情况,所以不能算正确,希望再考虑下,能有更好的解法,谢谢您的参与。
还是讲一下吧.-----------------
我的公式是可以实现三个以重名的,你可能没试.确实要看好多贴.所以我也只是和你讲一下.
原理是sort获得的是{1,1,1..},而sort2获得的是{3,3,3..},用两个sort获得的分求和后再平均,这里平均不是几个人重名的问题,而是因为用了两种排序方法.
公式之所以比较复杂,可能是考虑到如果人员增加,或者项目增加之类的.我把所有东西想得总是很复杂,怪毛病一个.
不过在解这题里我还是掌握了一个新方法,即生成{1,2,3,1,2,3,1,2,3}这样重复数组的方法.ceiling(mod(row(1:9),3.1),1).通常是用if(mod(row(1:9),3)=0,3,mod(row(1:9),3))这个方法要算两次.呵呵,雕虫小技.不足挂齿.只是喜于有所得才口风不严.见谅.
[此贴子已经被作者于2006-4-17 16:29:07编辑过] |