2018/8/16更新----笔试挂了,大家以下文章大家就当看着玩吧。。。。。。。。。。。。
说实话,光宇的笔试题不难,暑假在家天天玩。。基本的东西都忘记了,明天还有网易游戏的笔试。。。感觉要凉凉了,光宇笔试总共有两道题目,时间为80分钟(题目没有截图,只说下我记住的内容)
第一题:
对于给定数组,求任意两个数的乘积,最后输出最大的成绩,要求比较次数最小
如{1,2,5,8,-10,-100,20,20} 最大的积为1000 = -10*-1000
/*c++解题思路:
*将数组及数组长度传入判断函数,函数内对莫一项及其后面所有项进行乘法运算
*最终得到最大成绩
**/
#include
#include
using namespace std;
void FindMaxPro(int *num,int size);//查找最大积的函数声明
void main(){
int num[]={1,2,5,8,-10,-100,20,20};//给定的数组
FindMaxPro(num,8);//函数调用
}
//查找最大积的函数
//num 数组 size数组长度
void FindMaxPro(int *num,int size){
int i,j;
long max=0;
for(i=0;i<(size-1);i++){//数组内的某一项与其后各项进行相乘,将较大的数保存最后输出
for(j=i+1;j<(size-1);j++){
if(max
第二题
已知如下怪物信息及怪物数组,击杀怪物获得金币,求获取的最大金币数,击败怪物总时间限制在40分钟,如70=24+23+23
(PS自以为是的考察内容:面向对象中类内数据的获取)
class Monster {
// 打败花费的时间(分钟)
int costMinTime;
// 掉落金币数量
int coinNum;
Monster(int costMinTime, int coinNum) {
this.costMinTime = costMinTime;
this.coinNum = coinNum;
}
}
//怪物数组
Monster[] mosters = new Monster[] {
new Monster(12, 24),
new Monster(18, 20),
new Monster(19, 20),
new Monster(25, 30),
new Monster(10, 23),
new Monster(10, 23) };
//获取最大金币的函数
int wonMaxCoin(Monster [] mosters)
/*java解题思路:
*在wonMaxCoin函数中,按全排列的方式选定三个怪物,每次将打败三个怪物花费
*的时间costMinTime进行相加,当该时间小于40分钟时计算击败这三个怪物所得的金币数量
*计算后保存,便于下次循环与另外的排列方式进行比较,最终获取较大的金币数量
**/
package mrx_test;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
//怪物数组
Monster[] mosters = new Monster[] { new Monster(12, 24),
new Monster(18, 20), new Monster(19, 20), new Monster(25, 30),
new Monster(10, 23), new Monster(10, 23) };
//输出最大金币
System.out.println(wonMaxCoin(mosters));
}
static int wonMaxCoin(Monster [] mosters){
int coinSum=0;
int coinb=0;//金币比较
int minutes=0;
int i,j,k;
for(i=0;icoinSum) {coinSum = coinb;}
//金币,时间重置用于下次循环计算
minutes=0;
coinb=0;
}
}
}
return coinSum;
}
}
class Monster {
// 打败花费的时间(分钟)
int costMinTime;
// 掉落金币数量
int coinNum;
Monster(int costMinTime, int coinNum) {
this.costMinTime = costMinTime;
this.coinNum = coinNum;
}
//获取击败时间
public int getCostMinTime(){ return this.costMinTime;}
//获取获得金币
public int getCoinNum(){return this.coinNum;}
}
以上就是我的作答。。。第二题发现c++有点忘记了所以用java写的。。。发现自己编程真的好渣,希望大神指点。。。。几乎到了最后才交卷。。。。大四狗回学校不知道能不能找到工作。。。