开发工具:
文件大小: 234kb
下载次数: 0
上传时间: 2019-03-02
详细说明:Java,华为历年笔试面试机考试题,每章题量不多,但解决方案多样,以Java语言为主,共108题,持续更进中......for (int i = 1; i < num; i++)(
price[i]=sc. nextIntoi
val[i]=sc. nextInt()*price[i]
qi]=sc. nextInt(;
int[l[] dp=new int [num+1][sum money +1]
*初始值java默认赋值为8,其中dp[0][0.. sum money]为,从dp[1][0.,, sum money]
计算第1行,代表第一件物品
dp[i][ sum money]:前i个物体放入容量为 sum money的背包的最大价值
dp[i-1][ sum money]:前i-1个物体放入容量为 sum money的背包的最大价值;
dp[i-1][ sum money- priceli]:前i-1个物体放入容量为 sum money- price[i]的背包的最大
价值
dp[i][sum_money]=Math. maxidp[1-1][sum_money-price[i]]+val[i]
dpl
i-1I sum money
for (int i =1; 1 <=num; i++)i
for (int j
G<= sum money; j++)i
if(q[i]==0)
if(price[i]<=j)
dp[][j]=Math. max(dp[i-1][j1
dpli-1][j-Priceli]+val[i]);
if(q[i]>8)
if(price[i]+pricelqli]]<=j)
dp[i][j]=Math. max(dpli-1[J]
dp[i-1][j-price[i]
q[i]]]+val[i]+va1[q[i]]);
System. out. println(dp [num][ sum money ])
方案三:
import java.util. Scanner
//加∫限制条件的背包问题
public class Main t
public static int getMaxValue (int[ val, int[ weight, intl g, int n, int w)
ant
new int[n+ 1][W+ 1
for (int i =1; i<=n; i++)t
for (int j=1;j<=W; j++)i
if(q[i-1]==0){//主件
if( weight[i-1]<=j)//用j这么多钱去买i件商品可以获得最
大价值
dpi][j]= Math. max(dpli-1j, dpli-1j-weight[i
1]]+va1[i-1])
else{//附件
if( weight[i-1]+ Weight[q[i-1]]<=j)/附作的话加上主
件·起算
dp[i][j]= Math. max(dpi[], dpi -11j-weight[i
eturn dpinjlw];
public static void main(stringl args)i
Scanner input new Scanner(System. in);
While (input. hasNextInto)t
int
t extant();//总钱数
intm= input. nextint();//商品个数
t[ p= new int [m]:
int[]v=new int[m]
int[ q
int[m];
for (int
;i=1&&i<=126){/a
if(i==1e){
prit
1seif(i>=128&&i
){//b
b++;
if(i==172&&Integer parseInt(ip[1)>=16&&Integer.pa
seint(p[1])<=31){
pr1++j
1seif(i>=1928&i<=223){//C
C+十
if(i==192&&Integer parseInt(ip[11)==168)f
} else if(立>=224&&i<=239){//d
} else if(i>=2488&i<=255){//e
e+十
false
err+
reset
//output
System. out. printIn(at +b++C++d++e+"err+"+pri
public static boolean checkMask (String mask)
//check mask
ing[ mask_a
1it("\.")
if(mask_ arr[o]. equals( 255"))
if(mask arr[1].equals( 255"))
if(mask_arr[2]. equals("255" ))
mask arr[3]. equals(254")mask arr[3].equals(252")
mask_arr[3].equals(248")I
mask_arr[3].equals( 240) mask_arr[3]. equals("224")
Mask arr[3].equals(192")
mask_arr[3].equals(128 )mask_ arr[3]. equals(0")
return true
e⊥se
return false
else
if(mask_arr[2].equals(254") mask_arr[2].equals(252")mask_arr[2].equals("24
8")||
mask_arr[2]. equals("240") mask_ arr[2].equals(224")m
ask arr[2].equals( 192")
mask_arr[2].equals(128") mask_arr[2].equals("0")
if(mask arr[3].equals(0)
return true
lse
turn false
else
eturn false;
else
if(mask arr[l].equals(254)mask arr[1].equals(252 mask arr[1].equals(24
8")|
mask arr[1].equals("240")mask_arr[1].equals( 224" )mask
arr[1].equals(192") I
mask_arr[1].equals("128") mask_arr[1].equals(0"))
if(mask_ arr[2].equals( 0")&&mask arr[3].equals("0"))
return true;
return false
els
turn fals
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.