概述
题目链接:https://renjie.blog.csdn.net/article/details/127946125
java题解:
package com.company;
import java.util.Scanner;
public class Main20230207 {
static int count=0;//需要的双人自行车数量
static int m=0;
static int n=0;
public static void main(String[] args) {
Scanner in =new Scanner(System.in);
m=in.nextInt();
n=in.nextInt();
int num[]=new int[n];
for(int i=0;i<n;i++){
num[i]=in.nextInt();
}
//是否被占用,1表示即该对应的人有自行车了
int possesBic[]=new int[n];
for(int i=0;i<n;i++){
if(possesBic[i]==0){
if(num[i]==m){
count++;
possesBic[i]=1;//该对应的人有自行车了
}else if(num[i]<m){
possesBic[i]=1;//占用
handleData(num,possesBic,i);
}
}
}
System.out.println(count);
}
static void handleData(int num[],int[] possesBic,int datai){
//存在的组合标志:
boolean flag=false;
for(int i=datai+1;i<n;i++){
if(possesBic[i]==0){
if(num[i]+num[datai]<=m){
possesBic[i]=1;
count++;
flag=true;
}
}
}
//没有匹配时,一个人乘车
if(flag==false){
count++;
}
}
}
个人编写,代码逻辑问题欢迎指出~
最后
以上就是风趣导师为你收集整理的华为机试(JAVA)真题Od-【租车骑绿岛】的全部内容,希望文章能够帮你解决华为机试(JAVA)真题Od-【租车骑绿岛】所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复