网易游戏研发岗笔试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目描述
N国举行一年一度的足球杯赛。
来自不同地区的16支队伍分成A,B,C,D 4个小组,每个小组4支队伍。
同一小组的队伍两两之间会进行比赛,每个小组总共进行了6场比赛。
给出每个小组的这6场比赛的比分情况,请输出每个小组的最终排名。
其中积分规则为:
(1) 如果A战胜B,则A积3分,B积0分;
(2) 如果A和B结果为平局,则双方各得1分。
排名规则如下,按照以下顺序依次比较确定排名先后:
(1) 积分高的队伍排名靠前;
(2) 总净胜球数(总进球数-总失球数)多的队伍排名靠前;
(3) 总进球数多的队伍排名靠前;
(4) 字母序小者排名靠前。
输入描述:
输出描述:
示例1
输入
输出
题目描述
小明正在整理一份报表。
这份报表为一份二维的M行N列的表格,其中每一格为一个整数,或一个表示正无穷的字符串"+inf",或一个表示负无穷的字符串"-inf“。
现在有很多合计查询的任务交给了小明,每个查询任务为询问表格中某个区域内的所有数据的合计为多少。
如果区域内只有整数,则合计值为这些整数的和;如果区域内同时有"+inf"
和"-inf",则合计值为"NaN";如果只有"+inf",则合计值为"+inf";如果只有"-inf",则合计值为"-inf"。
现在小明就需要一个程序来自动化处理这些繁杂的重复劳动了。
输入描述:
输入第一行为两个正整数M和N,分别表示表格的行数及列数。
接下来有M行,每一行有N 个字符串,相邻两个字符串之间以一个空格隔开,每个字符串为一个整数d ij,或字符串" +inf"或"-inf",表示表格中第i行第j列的数据。
整个二维表格从上到下依次定义行号为1~M,从左到右依次定义列号为1~N,左上角的数据为(1, 1),右下角的数据为(M, N)。
接下来的一行有一个正整数K,表示查询合计的任务数量。
接下来有K行,每行有四个正整数x1, y1,x2, y2,表示需要合计行在x1到x2之间,且列在y1到y2之间的所有数据,即左上角为(x1, y1),右下角为(x2, y2)的矩形范围内的所有数据。
数据范围:
对于其中30%数据,满足1<=M, N, K<=100,所有数据整数的绝对值不超过100;
对于所有数据,都满足1<=x1<=x2<=M<=1000,1<=y1<=y2<=N<=1000,1<=K<=10000 0。
所有数据整数的绝对值不超过1000。
输出描述:
示例1
输入
输出
题目描述
小A最近在开发一款moba游戏的对战匹配系统,这个游戏是6V6模式,支持单独匹配,组队匹配,并且每名玩家有自己的段位值。
为了统一描述,我们将单独匹配看做是一个1人队伍的组队匹配。
为了简化起见,可以将游戏的对战匹配系统描述为如下模型:
·系统内维护一个房间列表,每个房间的容量为6;
·初始时系统的房间列表为空;
·每当有队伍点击匹配按钮后,系统根据一定规则,将其分配至房间列表中的某一个房间;如果找不到符合条件的房间或房间列表为空,则新创建一个房间将队伍放入;
·每当一个房间人数达到6人,则从当前房间列表中已满的房间内,搜索创建时间最早且双方符合一定规则的房间然后双方开始对战;
·只要房间没有开始对战,则始终处于等待状态。
将队伍放入已有房间的规则如下:
1. 房间剩余容量必须能够容纳该队伍;
2. 房间的段位平均值,与该队伍的段位平均值的差的绝对值必须小于等于【参数1】。
若存在多个,选择创建时间最早的房间;
3. 如果找不到符合条件2的房间,且存在满足条件1且等待时间大于等于【参数2】的房间,则选择该房间。
若存在多个,选择创建时间最早的房间;
其中,一个房间的等待时间定义为从房间创建开始到当前时间的时间差;一个房间的段位平均值定义为房间内玩家的段位值相加除以房间内玩家数的下取整;一个队伍的段位平均值定义为队伍内玩家的段位值相加除以队伍人数的下取整。
两个已满房间对战需满足的规则如下:
1. 两个房间的段位平均值的差的绝对值必须小于等于【参数3】;
2. 如果其中一个房间是6人组队,则另一个房间也必须是6人组队。
输入描述:
输出描述:
示例1
输入
输出
说明。