题目
3.1.1
题面描述
小杨有 种不同的武器,他对第 种武器的初始熟练度为 。
小杨会依次参加 场战斗,每场战斗小杨只能且必须选择一种武器使用,假设小杨使用了第 种武器参加了第 场
战斗,战斗前该武器的熟练度为 ,则战斗后小杨对该武器的熟练度会变为
。需要注意的是, 可能是正数或负数,这意味着小杨参加战斗后对武器的熟练度可能会提高,也可能会不变,还有可能降低。
小杨想请你编写程序帮他计算出如何选择武器才能使得 场战斗后,自己对 种武器的熟练度的最大值尽可能大
。
3.1.2
输入格式
第一行包含两个正整数 ,含义如题面所示。
第二行包含 个正整数 ,代表小杨对武器的初始熟练度。
第三行包含 个正整数 ,代表每场战斗后武器熟练度的变化值。
样例输入
2 2
9 9
-1 -1
样例输出
9
code
#include<bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n;
int m;
cin>>n>>m;
int b[20000];
int mx=0;
for( int i=0;i<n;i++ ){
int x;
cin>>x;
mx=max(x,mx);//只用最大值加
}
for( int i=0;i<m;i++ ){
cin>>b[i];
}
if( n==1 ){//如果没有其他武器帮他抗负数
for( int i=0;i<m;i++ ){
mx+=b[i];
}
cout<<mx;
}
for( int i=0;i<m;i++ ){
if( b[i]>=1 ){//如果增加的值为正数就加上它,如果是负数就让其他武器帮他加
mx+=b[i];
}
}
cout<<mx<<endl;
return 0;//求关注,有关必回
}