京东前端笔试编程题:
第一题:
Scanner in=new Scanner(System.in);
int num1=in.nextInt();
int num2=in.nextInt();
in.nextLine();
int[] data=new int[num2];
int[] arr=new int[num2];
for(int i=0;i<num2;i++){
data[i]=in.nextInt();
}
Arrays.sort(data);
for(int j=0;j<num2;j++){
arr[j]=data[num2-j-1];
}
int temp=0;
int max=0;
int price=0;
int num=Math.min(num1, num2);
for(int k=0;k<num;k++){
temp=arr[k]*(k+1);
System.out.println(temp);
if(temp>max){
max=temp;
price=arr[k];
}
}
System.out.println("最大收入是"+max+",定价是"+price);
第二题:
// 京东编程第二题,按K,K+1分是能够使得分最大的
Scanner in=new Scanner(System.in);
int num1=in.nextInt();
int num2=in.nextInt();
int num=num1/(2*num2+1);
num=num*2;
int yuShu=num1%(2*num2+1);
if(yuShu>=num2){
num++;
}
System.out.println("最后得分"+num+"||"+yuShu);